2023.2.0 TestShell API C# Reference Guide


ActivateTopologyActivate a topology.

Resolves all connectivity requests in the sandbox, and marks unshared resources as "in use".

Syntax

ActivateTopology(reservationId,topologyFullPath,out activatedTopology,out resources,out attributes,out routes,out connectors, out segments,out resultXml);

Parameters

TypeNameDescription
stringreservationId
Specify the string that represents the reservation’s unique identifier.
stringtopologyFullPath
Specify topology (name or full path). For full path, specify the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
out string[,]activatedTopology
The activated topology and its associated values.
out string[,]resources
List of resources and resource values associated with the activated topology.
out string[,]attributes
Attributes and attribute values for resources associated with the specified topology.
out string[,]routes
Routes and route values associated with the activated topologies.
out string[,]connectors
Visual connectors and their values associated with the activated topologies.
out string[,]segments
Segment details for topology routes in the specified reservation. Each route is comprised of one or more segments.
out stringresultXml
Specify the variable for the XML output.

Example


				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
				string[,] activatedTopology, resources, attributes, routes, segments;
				string resultXml;
				testShellAPI.ActivateTopology(reservationId,"Temp Automation Resources/TP1",out activatedTopology,out resources,out attributes,out routes,out connectors,out segments,out resultXml);
			

Output

  • activatedTopology
  • 
    				{{"Index","TopologyReservationName","TopologyName","Username","MachineName"},
    				{"1","TP1","TP1","admin","PRODUCT-W7 - Studio"}}
    			
  • resources
  • 
    				{{"Index","ActiveTopologyIndex","TopologyReservationName","Name","Address","FullAddress","RootAddress","ResourceFamilyName","ResourceModelName","FolderFullPath","Locked","LockInfo_ReservationName","LockInfo_Username","LockInfo_MachineName","LockInfo_Created","Alias"},
    				{"1","1","TP1","Router 1234","192.168.1.201","192.168.1.201","192.168.1.201","Generic Chassis","Generic Chassis Model","Lab Routers","False","","","","","Router 1234"},
    				{"2","1","TP1","L1 Switch 1234/Blade 1/Port 1","1","192.168.43.240/1/1","192.168.43.240","L1 Switch Port","Port EMPMC-36RJ","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM",""},
    				{"3","1","TP1","L1 Switch 1234/Blade 1/Port 2","2","192.168.43.240/1/2","192.168.43.240","L1 Switch Port","Port EMPMC-36RJ","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM",""},
    				{"4","1","TP1","L1 Switch 1234/Blade 1/Port 3","3","192.168.43.240/1/3","192.168.43.240","L1 Switch Port","Port EMPMC-36RJ","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM",""},
    				{"5","1","TP1","GenericResource 1234","192.168.1.20","192.168.1.20","192.168.1.20","Generic Resource","Generic Resource Model","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM","GenericResource 1234"},
    				{"6","1","TP1","GenericResource 1234/Port 1","1","192.168.1.20/1","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM","Port 1"},
    				{"7","1","TP1","GenericResource 1234/Port 2","2","192.168.1.20/2","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM","Port 2"},
    				{"8","1","TP1","GenericResource 1234/PowerPort 11","11","192.168.1.20/11","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM","PowerPort 11"},
    				{"9","1","TP1","GenericResource 1234/PowerPort 12","12","192.168.1.20/12","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM","PowerPort 12"},
    				{"10","1","TP1","GenericResource 1234/ConsolePort 21","21","192.168.1.20/21","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM","ConsolePort 21"},
    				{"11","1","TP1","Router 1234/Port 1","1","192.168.1.201/1","192.168.1.201","Generic Port","Generic Port Model","Lab Routers","True","Immediate reservation","admin","PRODUCT-W7 - Tcl","6/20/2012 6:03:50 PM","Port 1"}}
    			
  • attributes
  • 
    				{{"ResourceIndex","ResourceName","Name","Value","Type"},
    				{"1","Router 1234","SW_Version","","String"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","Shutdown","Disable","Lookup"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","Linked","False","String"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","Shutdown Unmapped","Enable","Lookup"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","LIN","Disable","Lookup"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","Auto Negotiation","True","Boolean"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","Speed","10 Mbps","Lookup"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","Duplex","Full","Lookup"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","Link Match","Enable","Lookup"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","MDI","AutoSense","Lookup"},
    				{"2","L1 Switch 1234/Blade 1/Port 1","Auto Negotiation Advertise","Other/Uknown","Lookup"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","Shutdown","Enable","Lookup"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","Linked","False","String"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","Shutdown Unmapped","Enable","Lookup"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","LIN","Disable","Lookup"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","Auto Negotiation","True","Boolean"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","Speed","1 Gbps","Lookup"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","Duplex","Full","Lookup"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","Link Match","Enable","Lookup"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","MDI","AutoSense","Lookup"},
    				{"3","L1 Switch 1234/Blade 1/Port 2","Auto Negotiation Advertise","Other/Uknown","Lookup"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","Shutdown","Enable","Lookup"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","Linked","False","String"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","Shutdown Unmapped","Enable","Lookup"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","LIN","Disable","Lookup"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","Auto Negotiation","True","Boolean"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","Speed","1 Gbps","Lookup"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","Duplex","Full","Lookup"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","Link Match","Enable","Lookup"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","MDI","AutoSense","Lookup"},
    				{"4","L1 Switch 1234/Blade 1/Port 3","Auto Negotiation Advertise","Other/Uknown","Lookup"}}
    			
  • routes
  • 
    				{{"Index","Source","Target","RouteType","Alias","Shared"},
    				{"1","Temp Automation Resources/GenericResource 1234/Port 1","Lab Routers/Router 1234/Port 1","bi","","True"},
    				{"2","Lab Routers/Router 1234/Port 1","Temp Automation Resources/GenericResource 1234/Port 2","uni","","True"}}
    			
  • connectors
  • 
    				{{"Alias","Type","Resource mapping type","Source","Target"}}
    			
  • segments
  • 
    				{{"RouteIndex","Source","Target"},
    				{"1","Temp Automation Resources/GenericResource 1234/Port 1","Temp Automation Resources/L1 Switch 1234/Blade 1/Port 1"},
    				{"1","Temp Automation Resources/L1 Switch 1234/Blade 1/Port 1","Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3"},
    				{"1","Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3","Lab Routers/Router 1234/Port 1"},
    				{"2","Lab Routers/Router 1234/Port 1","Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3"},
    				{"2","Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3","Temp Automation Resources/L1 Switch 1234/Blade 1/Port 2"},
    				{"2","Temp Automation Resources/L1 Switch 1234/Blade 1/Port 2","Temp Automation Resources/GenericResource 1234/Port 2"}}
    			
  • resultXml
  • 
    				<ResponseInfo Name="TP1" MachineName="PRODUCT-W7 - Tcl" Username="admin" Topology="TP1">
    				<Resources>
    				<ResourceInfo Name="Router 1234" FolderFullPath="Lab Routers" Address="192.168.1.201" FullAddress="192.168.1.201" RootAddress="192.168.1.201" ResourceFamilyName="Generic Chassis" ResourceModelName="Generic Chassis Model" Alias="Router 1234" Locked="false">
    				<ResourceAttributes>
    				<ResourceAttribute Name="SW_Version" Value="" Type="String"/>
    				</ResourceAttributes>
    				<LockInfo/>
    				</ResourceInfo>
    				<ResourceInfo Name="L1 Switch 1234/Blade 1/Port 1" FolderFullPath="Temp Automation Resources" Address="1" FullAddress="192.168.43.240/1/1" RootAddress="192.168.43.240" ResourceFamilyName="L1 Switch Port" ResourceModelName="Port EMPMC-36RJ" Alias="" Locked="true">
    				<ResourceAttributes>
    				<ResourceAttribute Name="Shutdown" Value="Disable" Type="Lookup"/>
    				<ResourceAttribute Name="Linked" Value="False" Type="String"/>
    				<ResourceAttribute Name="Shutdown Unmapped" Value="Enable" Type="Lookup"/>
    				<ResourceAttribute Name="LIN" Value="Disable" Type="Lookup"/>
    				<ResourceAttribute Name="Auto Negotiation" Value="True" Type="Boolean"/>
    				<ResourceAttribute Name="Speed" Value="10 Mbps" Type="Lookup"/>
    				<ResourceAttribute Name="Duplex" Value="Full" Type="Lookup"/>
    				<ResourceAttribute Name="Link Match" Value="Enable" Type="Lookup"/>
    				<ResourceAttribute Name="MDI" Value="AutoSense" Type="Lookup"/>
    				<ResourceAttribute Name="Auto Negotiation Advertise" Value="Other/Uknown" Type="Lookup"/>
    				</ResourceAttributes>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Temp Automation Resources/GenericResource 1234/Port 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="L1 Switch 1234/Blade 1/Port 2" FolderFullPath="Temp Automation Resources" Address="2" FullAddress="192.168.43.240/1/2" RootAddress="192.168.43.240" ResourceFamilyName="L1 Switch Port" ResourceModelName="Port EMPMC-36RJ" Alias="" Locked="true">
    				<ResourceAttributes>
    				<ResourceAttribute Name="Shutdown" Value="Enable" Type="Lookup"/>
    				<ResourceAttribute Name="Linked" Value="False" Type="String"/>
    				<ResourceAttribute Name="Shutdown Unmapped" Value="Enable" Type="Lookup"/>
    				<ResourceAttribute Name="LIN" Value="Disable" Type="Lookup"/>
    				<ResourceAttribute Name="Auto Negotiation" Value="True" Type="Boolean"/>
    				<ResourceAttribute Name="Speed" Value="1 Gbps" Type="Lookup"/>
    				<ResourceAttribute Name="Duplex" Value="Full" Type="Lookup"/>
    				<ResourceAttribute Name="Link Match" Value="Enable" Type="Lookup"/>
    				<ResourceAttribute Name="MDI" Value="AutoSense" Type="Lookup"/>
    				<ResourceAttribute Name="Auto Negotiation Advertise" Value="Other/Uknown" Type="Lookup"/>
    				</ResourceAttributes>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Temp Automation Resources/GenericResource 1234/Port 2"/>
    				</ResourceInfo>
    				<ResourceInfo Name="L1 Switch 1234/Blade 1/Port 3" FolderFullPath="Temp Automation Resources" Address="3" FullAddress="192.168.43.240/1/3" RootAddress="192.168.43.240" ResourceFamilyName="L1 Switch Port" ResourceModelName="Port EMPMC-36RJ" Alias="" Locked="true">
    				<ResourceAttributes>
    				<ResourceAttribute Name="Shutdown" Value="Enable" Type="Lookup"/>
    				<ResourceAttribute Name="Linked" Value="False" Type="String"/>
    				<ResourceAttribute Name="Shutdown Unmapped" Value="Enable" Type="Lookup"/>
    				<ResourceAttribute Name="LIN" Value="Disable" Type="Lookup"/>
    				<ResourceAttribute Name="Auto Negotiation" Value="True" Type="Boolean"/>
    				<ResourceAttribute Name="Speed" Value="1 Gbps" Type="Lookup"/>
    				<ResourceAttribute Name="Duplex" Value="Full" Type="Lookup"/>
    				<ResourceAttribute Name="Link Match" Value="Enable" Type="Lookup"/>
    				<ResourceAttribute Name="MDI" Value="AutoSense" Type="Lookup"/>
    				<ResourceAttribute Name="Auto Negotiation Advertise" Value="Other/Uknown" Type="Lookup"/>
    				</ResourceAttributes>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Lab Routers/Router 1234/Port 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234" FolderFullPath="Temp Automation Resources" Address="192.168.1.20" FullAddress="192.168.1.20" RootAddress="192.168.1.20" ResourceFamilyName="Generic Resource" ResourceModelName="Generic Resource Model" Alias="GenericResource 1234" Locked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/Port 1" FolderFullPath="Temp Automation Resources" Address="1" FullAddress="192.168.1.20/1" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 1" Locked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/Port 2" FolderFullPath="Temp Automation Resources" Address="2" FullAddress="192.168.1.20/2" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 2" Locked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 2"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/PowerPort 11" FolderFullPath="Temp Automation Resources" Address="11" FullAddress="192.168.1.20/11" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="PowerPort 11" Locked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Temp Automation Resources/SmartPower2L 1234/PowerPort 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/PowerPort 12" FolderFullPath="Temp Automation Resources" Address="12" FullAddress="192.168.1.20/12" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="PowerPort 12" Locked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Temp Automation Resources/SmartPower2L 1234/PowerPort 2"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/ConsolePort 21" FolderFullPath="Temp Automation Resources" Address="21" FullAddress="192.168.1.20/21" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="ConsolePort 21" Locked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Temp Automation Resources/ConsoleServer 1234/ConsolePort 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="Router 1234/Port 1" FolderFullPath="Lab Routers" Address="1" FullAddress="192.168.1.201/1" RootAddress="192.168.1.201" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 1" Locked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T18:03:50"/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3"/>
    				</ResourceInfo>
    				</Resources>
    				<Routes>
    				<Route Source="Temp Automation Resources/GenericResource 1234/Port 1" Target="Lab Routers/Router 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="Temp Automation Resources/GenericResource 1234/Port 1" Target="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 1"/>
    				<Segment Source="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 1" Target="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3" Target="Lab Routers/Router 1234/Port 1"/>
    				</Segments>
    				</Route>
    				<Route Source="Lab Routers/Router 1234/Port 1" Target="Temp Automation Resources/GenericResource 1234/Port 2" RouteType="uni" Shared="true">
    				<Segments>
    				<Segment Source="Lab Routers/Router 1234/Port 1" Target="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3" Target="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 2"/>
    				<Segment Source="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 2" Target="Temp Automation Resources/GenericResource 1234/Port 2"/>
    				</Segments>
    				</Route>
    				</Routes>
    				<Connectors>
    				</Connectors>
    				</ResponseInfo>
    			

    back to TOC

    AddGroupsToDomainAdd groups to a domain.

    Add groups to a domain.

    Syntax

    AddGroupsToDomain(domainName,groupNames,viewOnly);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    string[]groupNames
    Specify an array of one or more groups.
    YesNoOptionsreadOnly
    Specify if the array of group should be added with view only permissions.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.AddGroupsToDomain("Global", new string[,] { "QA_Users", "RND_Users" }, YesNoOptions.Yes);
    			

    back to TOC

    AddNewDomainAdds a new domain.

    Adds a new domain.

    Syntax

    AddNewDomain(domainName,description);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    stringdescription
    Specify the description of the domain.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.AddNewDomain("Domain1","My Domain");
    			

    back to TOC

    AddNewGroupAdd a new group.

    Adds a new users group

    Syntax

    AddNewGroup(groupName,description,groupRole);

    Parameters

    TypeNameDescription
    stringgroupName
    Specify the name of the group.
    stringdescription
    Provide a short description of the group.
    AddRoleOptionsgroupRole
    Specify the role of the group, possible values: External, Regular, DomainAdmin.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.AddNewGroup("QA_Users","QA users", GroupRole.Regular);
    			

    back to TOC

    AddNewUserAdd a new TestShell user.

    Configures user login details and permissions. Use AddUsersToGroup to specify the user’s domain access.

    Syntax

    AddNewUser(username,password,email,isActive,isAdmin);

    Parameters

    TypeNameDescription
    stringusername
    Specify the name of the user.
    stringpassword
    Specify the user’s login password.
    stringemail
    Specify the user’s email address.
    YesNoOptionsisActive
    Grant or deny active access to the application.
    YesNoOptionsisAdmin
    Add the user to the System Administrators group.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.AddNewUser("User1234","pass1234","user1234@work.com",YesNoOptions.Yes,YesNoOptions.No);
    			

    back to TOC

    AddPermittedUsersToReservationAdd permitted users to a reservation.

    Add one or more permitted users to the specified reservation.

    Syntax

    AddPermittedUsersToReservation(reservationId,usernames);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]usernames
    List of users to permit access to the reservation.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.AddPermittedUsersToReservation("2d2f7cde-20g3-4bac-80d2-e8cfhecef45b",new string[]{"name1","name2"});
    			

    back to TOC

    AddResourcesToDomainAdd resources to a domain.

    Add resources to a domain.

    Syntax

    AddResourcesToDomain(domainName,resourcesNames,includeDecendants);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    string[]resourcesNames
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    YesNoOptionsincludeDecendants
    Specify whether to include child resources.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.AddResourcesToDomain("Domain1", new string[]{"Router 1234","GenericResource 1234"}, YesNoOptions.Yes);
    			

    back to TOC

    AddResourcesToReservationReserve resources for locking.

    Reserves resources to be locked.

    Syntax

    AddResourcesToReservation(reservationId,resourcesFullPath,shared,out conflicts,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]resourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    Shareabilityshared
    Specify whether all resources will be shared among other enviroments
    out string[,]conflicts
    Resource conflicts and their associated values for the specified reservation.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string[,] conflicts;
    				string resultXml;
    				testShellAPI.AddResourcesToReservation(reservationId, new string[]{"Router 1234","GenericResource 1234"}, Shareability.Shared, out conflicts, out resultXml);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo>
    				<Conflicts/>
    				</ResponseInfo>
    			

    back to TOC

    AddRoutesToReservationReserve specified routes.

    Adds (but does not connect) routes between all pairs of source and target endpoints, adding additional connectivity ports when required. Use ConnectRoutesInReservation to connect the routes.

    Syntax

    AddRoutesToReservation(reservationId,sourceResourcesFullPath,targetResourcesFullPath,mappingType,maxHops,routeAlias,isShared,out segments,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]sourceResourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    string[]targetResourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    MappingTypemappingType
    Specify bidirectional or unidirectional as the mapping type.
    intmaxHops
    Specify the maximum number or allowed hops.
    stringrouteAlias
    Specify the route’s alias.
    YesNoOptionsisShared
    Specify whether these routes are shared. Shared routes can be used in more than one reservation.
    out string[,]routes
    Routes and route values associated with the activated topologies.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] routes;
    				testShellAPI.AddRoutesToReservation(reservationId,new string[]{"Router 1234/Port 1"},new string[]{"GenericResource 1234/Port 1"},MappingType.Bidirectional,2,"a route",YesNoOptions.No,out routes,out resultXml);
    			

    Output

  • routes
  • {{"Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 1","GenericResource 1234/Port 1"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 1"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 1" Target="GenericResource 1234/Port 1"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    AddTopologiesToDomainAdds a list of one or more topologies to a domain.

    Adds a list of one or more topologies to a domain.

    Syntax

    AddTopologiesToDomain(domainName,topologyNames);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    string[]topologyNames
    Specify a list of topology names. Include the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    YesNoOptionsvalidateResourceAvailability
    Validates the existence of the resource resolution in the target domain. Default value: 'True'. Note: when value 'False' is supplied, there is no process of associating resources and routes with the target domain.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.AddTopologiesToDomain("Domain1",new string[]{"Topology1"});
    			

    back to TOC

    AddUsersToGroupAdd users to a group.

    Adds a list of one or more users to the specified group.

    Syntax

    AddUsersToGroup(usernames,groupName);

    Parameters

    TypeNameDescription
    string[]usernames
    Specify an array of one or more users.
    stringgroupName
    Specify the name of the group.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.AddUsersToGroup(new string[,] { "User1234", "User2345" }, "QA_Users");
    			

    back to TOC

    AutoLoadOverwrite switch settings with current data.

    Overrides the data of a specified L1 switch with current device settings and mappings.

    Syntax

    AutoLoad(resourceFullPath,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.AutoLoad("L1 Switch 1234",out resultXml);
    			

    back to TOC

    ArchiveDomainArchive the domain

    Archive a domain. All future reservation will be deleted.

    Syntax

    ArchiveDomain(domainName,out resultXml);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.ArchiveDomain("Domain1", out resultXml);
    			

    back to TOC

    AddAppToReservationAdd an App resource to an existing reservation.

    Add an App resource to an existing reservation.

    Syntax

    AddAppToReservation(reservationId, appName, deploymentPath, positionX, positionY, out createdAppName, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringappName
    Specify the App template's name.
    stringdeploymentPath
    Specify the way the app will be deploy from a given list of options.
    doublepositionX
    Specify the x coordinate of the App's top left corner.
    doublepositionY
    Specify the y coordinate of the App's top left corner.
    out stringcreatedAppName
    The name of the App to be created.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId;
    				string appName, createdAppName;
    				testShellAPI.AddAppToReservation(reservationId, appName, deploymentPath, 100, 100, out createdAppName, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo ReservedAppName=""/>

    back to TOC

    AddServiceToReservationAdd service resource to existing reservation.

    Add service resource to existing reservation.

    Syntax

    AddServiceToReservation(reservationId,serviceName,alias,attributes);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringserviceName
    Specify the service name.
    stringalias
    Specify the service alias.
    string[,]attributes
    Specify a matrix of attributes and associated attribute values.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId;
    				string serviceName;
    				string alias;
    				string[,] attributeValues;
    				testShellAPI.AddServiceToReservation(reservationId, serviceName, alias, attributes);
    			

    back to TOC

    CopyDomainsResourcesCopy resources to a domain.

    Copy resources from a list of source domains to a target domain.

    Syntax

    CopyDomainsResources(sourceDomains,targetDomain);

    Parameters

    TypeNameDescription
    string[]domainNameSources
    Specify the names of the source domains.
    stringdomainNameDestination
    Specify the name of the target domain.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.CopyDomainsResources(new string[]{"Domain1","Domain2"}, "Domain3");
    			

    back to TOC

    ClearAndResetConsoleClear and reset consoles.

    Clears and resets specified resource console ports.

    Syntax

    ClearAndResetConsole(reservationId,resourceFullPath,consolePortsFullPath,baudRate,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    string[]consolePortsFullPath
    Specify a list of console ports according to their location in the Resource Explorer. Include the full path from the root to each console port, separated by slashes. For example: Console/Ports/PortName.
    BaudRatebaudRate
    Specify the baud rate to apply to the ports.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.ClearAndResetConsole(reservationId,"GenericResource 1234",new string[]{"GenericResource 1234/ConsolePort 21"},BaudRate.Baud9600,out output,out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output=""/>

    back to TOC

    ConnectRoutesInReservationConnects a list of routes.

    Connects requested routes. It locks the resources and adds route mappings. The routes must already exist in the reservation.

    Syntax

    ConnectRoutesInReservation(reservationId,endpoints,mappingType,out routes,out segments,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[,]endpoints
    The routes’ endpoints to connect.
    MappingTypemappingType
    Specify bidirectional or unidirectional as the mapping type.
    out string[,]routes
    The routes that were connected.
    out string[,]segments
    The segments details of the connected routes.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] routes,segments;
    				testShellAPI.ConnectRoutesInReservation(reservationId,new string[,]{{"Router 1234/Port 1","GenericResource 1234/Port 1"}},MappingType.Bidirectional,out segments,out resultXml);
    			

    Output

  • routes
  • 
    				{{"Index","Source","Target","RouteType","Alias","Shared"},
    				{"1","Router 1234/Port 1","GenericResource 1234/Port 1","bi","a route","True"}}
    			
  • segments
  • 
    				{{"RouteIndex","Source","Target"},
    				{"1","Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3"},
    				{"1","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 1"},
    				{"1","L1 Switch 1234/Blade 1/Port 1","GenericResource 1234/Port 1"}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 1"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 1" Target="GenericResource 1234/Port 1"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    CreateFolderAdd a new folder.

    Adds a new folder to the specified path.

    Syntax

    CreateFolder(folderFullPath);

    Parameters

    TypeNameDescription
    stringfolderFullPath
    Specify the full folder name. Include the full path from the root to a specific folder, separated by slashes. For example: ResourceFamilyFolder/ResourceModelFolder.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.CreateFolder("Lab Routers");
    			

    back to TOC

    CreateImmediateReservationCreate an imminent reservation.

    Defines a reservation to be started immediately.

    Syntax

    CreateImmediateReservation(reservationName,owner,durationInMinutes,notifyOnStart,notifyOnSetupComplete,notifyOnEnd,notificationMinutesBeforeEnd,topology,globalInputs,requirementsInputs,additionalInfoInputs, out reservationId, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationName
    Specify the name of the reservation.
    stringowner
    Specify the user name of the reservation owner.
    intdurationInMinutes
    Specify the length of the reservation. (in minutes)
    YesNoOptionsnotifyOnStart
    Indicate whether to notify the reservation owner when the reservation starts.
    YesNoOptionsnotifyOnEnd
    Indicate whether to notify the reservation owner when the reservation ends.
    intnotificationMinutesBeforeEnd
    Indicate the number of minutes before the end of the reservation to send out a Notify On End alert to the reservation owner. (0 = disabled)
    stringtopologyFullPath
    Specify the full topology name. Include the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    string[,]globalInputs
    Global inputs associated with the specified topology. For example: {['Input Name', 'Value';]}.
    string[,]requirementsInputs
    Requirements inputs associated with the specified topology. For example: {['Resource Name', 'Input Name', 'Value', 'AttributeType';]}, AttributeType can be one of the following: Attributes/Models/Quantity.
    string[,]additionalInfoInputs
    Additional info inputs associated with the specified topology. For example: {['Resource Name', 'Input Name', 'Value';]}.
    YesNoOptionsnotifyOnSetupComplete
    Indicate whether to notify the reservation owner when the reservation setup completes.
    YesNoOptionsisTerminationProtectionEnabled
    Indicate whether to protect the reservation from being terminated.
    stringapprovalSid
    Leave empty. Used for internal purposes.
    out stringreservationId
    Reservation’s unique identifier (string).
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] globalInputs = {{"input1", "value1"}, {"input2", "value2"}};
    				string[,] requirementsInputs = {{"resource", "attribute", "value", "Attributes"}};
    				string[,] additionalInfoInputs = {{"resource", "attribute", "value"}};
    				string resultXml;
    				string reservationId;
    				testShellAPI.CreateImmediateReservation("Immediate reservation", "admin", 30, YesNoOptions.No, YesNoOptions.No, 0, "myTopology", globalInputs, requirementsInputs, additionalInfoInputs, out reservationId, out resultXml);
    			

    Output

  • reservationId
  • 28cb2a71-c8fc-4f41-a22b-e65685ebed14
  • resultXml
  • 
    				<ResponseInfo>
    				<Reservation Id="28cb2a71-c8fc-4f41-a22b-e65685ebed14" Name="Immediate reservation" StartTime="2012-06-20T15:05:00" EndTime="2012-06-20T15:35:00" RecurrenceType="None" Owner="admin" Booked="true" Status="Active" ActualEndTime="" CreateDate="2012-06-20T15:05:06" ModificationDate="2012-06-20T15:05:06">
    				<Topologies/>
    				</Reservation>
    				</ResponseInfo>
    			

    back to TOC

    CreateReservationCreate a reservation.

    Defines a new reservation.

    Syntax

    CreateReservation(reservationName,owner,startTime,endTime,notifyOnStart,notifyOnSetupComplete,notifyOnEnd,notificationMinutesBeforeEnd, topology, globalInputs, requirementsInputs, additionalInfoInputs, out reservationId, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationName
    Specify the name of the reservation.
    stringowner
    Specify the user name of the reservation owner.
    DateTimestartTime
    The start time of the reservation.
    DateTimeendTime
    The end time of the reservation.
    YesNoOptionsnotifyOnStart
    Indicate whether to notify the reservation owner when the reservation starts.
    YesNoOptionsnotifyOnEnd
    Indicate whether to notify the reservation owner when the reservation ends.
    intnotificationMinutesBeforeEnd
    Indicate the number of minutes before the end of the reservation to send out a Notify On End alert to the reservation owner. (0 = disabled)
    stringtopologyFullPath
    Specify the full topology name. Include the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    string[,]globalInputs
    Global inputs associated with the specified topology. For example: {['Input Name', 'Value';]}.
    string[,]requirementsInputs
    Requirements inputs associated with the specified topology. For example: {['Resource Name', 'Input Name', 'Value', 'AttributeType';]}, AttributeType can be one of the following: Attributes/Models/Quantity.
    string[,]additionalInfoInputs
    Additional info inputs associated with the specified topology. For example: {['Resource Name', 'Input Name', 'Value';]}.
    YesNoOptionsnotifyOnSetupComplete
    Indicate whether to notify the reservation owner when the reservation setup completes.
    YesNoOptionsisTerminationProtectionEnabled
    Indicate whether to protect the reservation from being terminated.
    stringapprovalSid
    Leave empty. Used for internal purposes.
    out stringreservationId
    Reservation’s unique identifier (string).
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] globalInputs = {{"attribute1", "value1"}, {"attribute2", "value2"}};
    				string[,] requirementsInputs = {{"resource", "attribute", "value", "Attributes"}};
    				string[,] additionalInfoInputs = {{"resource", "attribute", "value"}};
    				string resultXml;
    				string reservationId;
    				testShellAPI.CreateReservation("Reservation1", "admin", new DateTime(2015, 1, 1, 10, 0, 0), new DateTime(2015, 1, 1, 11, 0, 0), YesNoOptions.No, YesNoOptions.No, 0, "myTopology", globalInputs, requirementsInputs, additionalInfoInputs, out reservationId, out resultXml);
    			

    Output

  • reservationId
  • af626b88-458b-4e7a-9054-c03d8cffa260
  • resultXml
  • 
    				<ResponseInfo>
    				<Reservation Id="af626b88-458b-4e7a-9054-c03d8cffa260" Name="test reservation" StartTime="2015-01-01T10:00:00" EndTime="2015-01-01T11:00:00" RecurrenceType="None" Owner="admin" Booked="true" Status="Pending" ActualEndTime="" CreateDate="2012-06-20T10:40:47" ModificationDate="2012-06-20T10:40:47">
    				<Topologies/>
    				</Reservation>
    				</ResponseInfo>
    			

    back to TOC

    CreateResourceAdd a new resource.

    Adds a new resource.

    Syntax

    CreateResource(resourceFamily,resourceModel,resourceName,resourceAddress,folderFullPath,parentResourceFullPath,resourceDescription,out resource,out attributes,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFamily
    Specify the name of the resource family (optional).
    stringresourceModel
    Specify the resource model.
    stringresourceName
    Specify the resource name.
    stringresourceAddress
    Specify the resource address.
    stringfolderFullPath
    Specify the full folder name. Include the full path from the root to a specific folder, separated by slashes. For example: ResourceFamilyFolder/ResourceModelFolder.
    stringparentResourceFullPath
    Specify the full path from the root to a parent resource, separated by slashes. For example: Traffic Generators/Generic.
    stringresourceDescription
    Provide a short description to help identify the resource.
    out string[,]resource
    Details associated with the specified resource.
    out string[,]attributes
    Attributes and attribute values associated with the new resource.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string[,] resource;
    				string[,] attributes;
    				testShellAPI.CreateResource("Bridge", "Bridge Generic Model", "Bridge1", "192.168.1.200", "", "", "", out resource, out attributes, out resultXml);
    			

    Output

  • resource
  • 
    				{{Index, ParentIndex, Name, Address, FullAddress, RootAddress, ResourceFamilyName, ResourceModelName, FolderFullPath, Locked, LockInfo_ReservationName, LockInfo_Username, LockInfo_MachineName, LockInfo_Created, Excluded, Permission, UniqueIdentifier}
    				{1, -1, Bridge1, 192.168.1.200, 192.168.1.200, 192.168.1.200, Bridge, Bridge Generic Model, , False, , , , , False, ReadWrite, }}
    			
  • attributes
  • 
    				{{ResourceIndex, ResourceName, AttributeName, AttributeValue, AttributeType}
    				{1, Bridge1, Number of Ports, 0, Numeric}}
    			
  • resultXml
  • 
    				<ResponseInfo Name="Bridge1" FolderFullPath="" Address="192.168.1.200" FullAddress="192.168.1.200" RootAddress="192.168.1.200" ResourceFamilyName="Bridge" ResourceModelName="Bridge Generic Model" Locked="false" Excluded="false" Description="" Permission="ReadWrite">
    				<ResourceAttributes>
    				<ResourceAttribute Name="Number of Ports" Value="0" Type="Numeric"></ResourceAttribute>
    				</ResourceAttributes>
    				<Domains></Domains>
    				<ChildResources></ChildResources>
    				<LockInfo></LockInfo>
    				</ResponseInfo>
    			

    back to TOC

    CreateResourcesAdds new resources.

    Adds new resources.

    Syntax

    CreateResources(resourceCreationRequests);

    Parameters

    TypeNameDescription
    string[,]resourceInfoDtos
    List of resources to add.
    For example: {['Resource Family','Resource Model','Resource Name','Resource Address','Folder Full Path','Parent Resource Full Path','Resource Description';]}

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] resources;
    				testShellAPI.CreateResources(resources);
    			

    back to TOC

    CreateRouteInReservationCreate a route between two resources.

    Creates a route between the specified source and target resources.

    Syntax

    CreateRouteInReservation(reservationId,sourceResourceFullPath,targetResourceFullPath,overrideActiveRoutes,mappingType,maxHops,routeAlias,isShared,out segments,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringsourceResourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringtargetResourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    YesNoOptionsoverrideActiveRoutes
    Specify whether the new route can override existing routes.
    MappingTypemappingType
    Specify bidirectional or unidirectional as the mapping type.
    intmaxHops
    Specify the maximum number or allowed hops.
    stringrouteAlias
    Specify the route’s alias.
    YesNoOptionsisShared
    Specify whether this route is shared. Shared routes can be used in more than one reservation.
    out string[,]route
    Routes and route values associated with the activated topologies.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] route;
    				testShellAPI.CreateRouteInReservation(reservationId,"Router 1234/Port 1","GenericResource 1234/Port 1",YesNoOptions.Yes,MappingType.Bidirectional,2,"a route",YesNoOptions.No,out route,out resultXml);
    			

    Output

  • route
  • {{"Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 1","GenericResource 1234/Port 1"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 1"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 1" Target="GenericResource 1234/Port 1"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    CreateRoutesInReservationCreate routes between the listed source and target resources.

    Create routes between the listed source and target resources. Routes will be created for each pair of source and target resources.

    Syntax

    CreateRoutesInReservation(reservationId,sourceResourcesFullPath,targetResourcesFullPath,overrideActiveRoutes,mappingType,maxHops,routeAlias,isShared,out segments,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]sourceResourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    string[]targetResourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    YesNoOptionsoverrideActiveRoutes
    Specify whether the new route can override existing routes.
    MappingTypemappingType
    Specify bidirectional or unidirectional as the mapping type.
    intmaxHops
    Specify the maximum number or allowed hops.
    stringrouteAlias
    Specify the route’s alias.
    YesNoOptionsisShared
    Specify whether these routes are shared. Shared routes can be used in more than one reservation.
    out string[,]routes
    Routes and route values associated with the activated topologies.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] routes;
    				testShellAPI.CreateRoutesInReservation(reservationId,new string[]{"Router 1234/Port 1"},new string[]{"GenericResource 1234/Port 2"},YesNoOptions.Yes,MappingType.Bidirectional,2,"a route",YesNoOptions.No,out routes,out resultXml);
    			

    Output

  • routes
  • {{"Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 2","GenericResource 1234/Port 2"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 2" RouteType="uni" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 2"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 2" Target="GenericResource 1234/Port 2"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    DeleteDomainDeletes a domain.

    Deletes a domain.

    Syntax

    DeleteDomain(domainName);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteDomain("Domain1");
    			

    back to TOC

    DeleteTopologyDelete a topology.

    Deletes the specified topology.

    Syntax

    DeleteTopology(topologyFullPath);

    Parameters

    TypeNameDescription
    stringtopologyFullPath
    Specify topology (name or full path). For full path, specify the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteTopology("Topology1");
    			

    back to TOC

    DeleteFolderDelete a folder.

    Deletes the specified folder.

    Syntax

    DeleteFolder(folderFullPath);

    Parameters

    TypeNameDescription
    stringfolderFullPath
    Specify the full folder name. Include the full path from the root to a specific folder, separated by slashes. For example: ResourceFamilyFolder/ResourceModelFolder.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteFolder("Lab Routers");
    			

    back to TOC

    DeleteGroupDelete a group.

    Deletes the specified group.

    Syntax

    DeleteGroup(groupName);

    Parameters

    TypeNameDescription
    stringgroupName
    Specify the name of the group.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteGroup("QA_Users")
    			

    back to TOC

    DeleteReservationDelete a reservation.

    Deletes the specified reservation. Important: DeleteReservation does not perform teardown and therefore does not revert and clean up the sandbox environment.

    Syntax

    DeleteReservation(reservationId,unmap);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    YesNoOptionsunmap
    Specify whether to keep mappings or release mapped resources when deleting the reservation.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.DeleteReservation(reservationId,YesNoOptions.Yes);
    			

    back to TOC

    DeleteResourceDelete a resource.

    Deletes the specified resource.

    Syntax

    DeleteResource(resourceFullPath);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteResource("Router 4321");
    			

    back to TOC

    DeleteResourcesDeletes the specified resources.

    Deletes the specified resources.

    Syntax

    DeleteResources(resourcesFullPath);

    Parameters

    TypeNameDescription
    string[]resourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteResources(new string[] {"Router 4321"});
    			

    back to TOC

    DeleteUserDeletes a user.

    Deletes the specified user.

    Syntax

    DeleteUser(username);

    Parameters

    TypeNameDescription
    stringusername
    Specify the name of the user.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteUser("User1234");
    			

    back to TOC

    DisconnectRoutesInReservationDisconnects a list of routes.

    Disconnects requested routes. It unlocks the resources (if locked), and removes route mappings, but does not remove the route resources from the reservation.

    Syntax

    DisconnectRoutesInReservation(reservationId,endpoints,out routes,out segments,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[,]endpoints
    The routes endpoints to disconnect.
    out string[,]routes
    The routes that were disconnected.
    out string[,]segments
    The segments details of the disconnected routes.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] routes,segments;
    				testShellAPI.DisconnectRoutesInReservation(reservationId,new string[,]{{"Router 1234/Port 1","GenericResource 1234/Port 1"}},out segments,out resultXml);
    			

    Output

  • routes
  • 
    				{{"Index","Source","Target","RouteType","Alias","Shared"},
    				{"1","Router 1234/Port 1","GenericResource 1234/Port 1","bi","a route","True"}}
    			
  • segments
  • 
    				{{"RouteIndex","Source","Target"},
    				{"1","Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3"},
    				{"1","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 1"},
    				{"1","L1 Switch 1234/Blade 1/Port 1","GenericResource 1234/Port 1"}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 1"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 1" Target="GenericResource 1234/Port 1"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    DeleteResourceTemplateDeletes a specific resource template.

    Deletes a specific resource template.

    Syntax

    DeleteResourceTemplate(resourceTemplateName);

    Parameters

    TypeNameDescription
    stringresourceTemplateName
    Specify the resource template name.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteResourceTemplate("Resource Template 4 tests");
    			

    back to TOC

    EndReservationEnd a reservation.

    Ends the specified reservation and optionally, unlocks and releases all reservation resources.

    Syntax

    EndReservation(reservationId,unmap);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    YesNoOptionsunmap
    Specify whether to keep mappings or release mapped resources when deleting the reservation.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.EndReservation(reservationId,YesNoOptions.Yes);
    			

    back to TOC

    ExcludeResourceExclude a resource.

    Excludes a specified resource.

    Syntax

    ExcludeResource(resourceFullPath);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.ExcludeResource("L1 Switch 1234");
    			

    back to TOC

    ExcludeResourcesExcludes the specified resources.

    Excludes the specified resources.

    Syntax

    ExcludeResources(resourcesFullPath);

    Parameters

    TypeNameDescription
    string[]resourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.ExcludeResources(new[] {"L1 Switch 1234"});
    			

    back to TOC

    SetResourceVisibilitySet the resource visibility state.

    Set the resource visibility State - Admin Only, Everyone or Family Default.

    Syntax

    SetResourceVisibility(resourceFullPath, newVisibility);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringnewVisibility
    The new visibility state for the resource. options: AdminOnly, Everyone or FamilyDefault

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.SetResourceVisibility("L1 Switch 1234", "AdminOnly");
    			

    back to TOC

    EnqueueResourceCommand

    [Deprecated] Enqueues a command to be executed for the specified driver.

    Syntax

    EnqueueResourceCommand(reservationId,resourceFullPath,commandName,parameterValues,printOutput);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringcommandName
    Specify the name of the command.
    string[]parameterValues
    Specify the list of parameters values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.EnqueueResourceCommand(reservationId, "Router 1234", "ExampleCommand", new string[]{"abcd", "2"}, YesNoOptions.Yes);
    			

    back to TOC

    EnqueueServiceCommand

    [Deprecated] Enqueues a command to be executed for the specified driver.

    Syntax

    EnqueueServiceCommand(reservationId,serviceAlias,commandName,parameterValues,printOutput);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringserviceAlias
    Specify the alias of the service. The service alias is its identifier in the environment context. It can be retrieved via the environment details API and is displayed visually on the diagram.
    stringcommandName
    Specify the name of the command.
    string[]parameterValues
    Specify the list of parameters values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.EnqueueServiceCommand(reservationId, "Service1", "ExampleCommand", new string[]{"abcd", "2"},YesNoOptions.Yes);
    			

    back to TOC

    ExecuteResourceCommand

    [Deprecated] Executes a command for the specified driver.

    Syntax

    ExecuteResourceCommand(reservationId,resourceFullPath,commandName,parameterValues,printOutput,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringcommandName
    Specify the name of the command.
    string[]parameterValues
    Specify the list of parameters values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.ExecuteResourceCommand(reservationId, "Router 1234", "ExampleCommand", new string[]{"abcd", "2"}, YesNoOptions.Yes, out output, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    ExecuteResourceConnectedCommand

    Executes a command for the specified driver.

    Syntax

    ExecuteResourceConnectedCommand(reservationId,resourceFullPath,commandName,commandTag, parameterValues, connectedPortsFullPath,printOutput, out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: RouterA/Port1.
    stringcommandName
    Specify the name of the command.
    stringcommandTag
    Specify the command tag. Connected command tags are used to define categories of functionality (e.g 'virtualization').
    string[]parameterValues
    Specify the list of parameters values required for executing the command.
    string[]connectedPortsFullPath
    Specify the list of connected ports to use in this operation. Include the full path from the root resource to each port, separated by slashes. For example: Switch20/Blade5/PowerPort1. Leave blank to perform the connected operation on all of the specified resource’s connected ports.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.ExecuteResourceConnectedCommand(reservationId, "Router 1234", "SpinUp","virtualization", new string[]{"abcd", "2"}, {"Router 1234/Port1"}, YesNoOptions.Yes, out output, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    EnqueueTopologyCommandEnqueue a topology command.

    [Deprecated] Enqueues a command to be executed for the specified reservation.

    Syntax

    EnqueueTopologyCommand(reservationId,commandName,parameterValues,printOutput);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringcommandName
    Specify the name of the command.
    string[]parameterValues
    Specify the list of parameters values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.EnqueueTopologyCommand(reservationId, "ExampleCommand", new string[]{"abcd", "2"}, YesNoOptions.Yes);
    			

    back to TOC

    ExecuteTopologyCommandExecute a topology command.

    [Deprecated] Executes a command for the specified reservation.

    Syntax

    ExecuteTopologyCommand(reservationId,commandName,parameterValues,printOutput,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringcommandName
    Specify the name of the command.
    string[]parameterValues
    Specify the list of parameters values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.ExecuteTopologyCommand(reservationId, "ExampleCommand", new string[]{"abcd", "2"}, YesNoOptions.Yes, out output, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    ExtendReservationExtend a reservation.

    Extends the duration of the specified reservation.

    Syntax

    ExtendReservation(reservationId,minutesToAdd);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    intminutesToAdd
    Specify the number of minutes to add to the specified reservation.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.ExtendReservation(reservationId,60);
    			

    back to TOC

    UpdateReservationEndTimeUpdate a reservation end time or persistence.

    Extends the duration of the specified reservation.

    Syntax

    UpdateReservationEndTime(reservationId, isPersistent, endTime);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    YesNoOptionsisPersistent
    Enable or disable Reservation Persistence.
    stringendTime
    The end time of the reservation.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				bool isPersistent = true;
    				string endTime = DateTime.UtcNow.AddDays(1).ToString();
    				testShellAPI.UpdateReservationEndTime(reservationId,isPersistent,endTime);
    			

    back to TOC

    ExportFamiliesAndModelsExports the resource families, models, attributes and structure configuration.

    Exports the resource families, models, attributes and structure configuration.

    Syntax

    ExportFamiliesAndModels(out resultXml);

    Parameters

    TypeNameDescription
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.ExportFamiliesAndModels(out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo>

    back to TOC

    ExecuteServiceCommand

    [Deprecated] Executes a command for the specified service driver.

    Syntax

    ExecuteServiceCommand(reservationId, serviceAlias, commandName, parameterValues, printOutput, out output, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringserviceAlias
    Specify the alias of the service.
    stringcommandName
    Specify the name of the command.
    string[]parameterValues
    Specify the list of parameters values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.ExecuteServiceCommand(reservationId, "Service 1", "ExampleCommand", new string[]{"abcd", "2"}, YesNoOptions.Yes, out output, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    EditAppsInReservation

    Edit Apps in a reservation

    Syntax

    EditAppsInReservation(reservationId, editAppsRequests, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[,]editAppsRequests
    Changes to implement in the App. Please note that when modifying attributes, *all* the attributes in deployed app must be updated.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				var editAppRequest = new ApiEditAppRequest
    				{
    				DefaultDeployment = new DefaultDeploymentPath(),
    				};
    				editAppRequest.Name = "testApp";
    				editAppRequest.Description = "my desc";
    				editAppRequest.NewName = "new name";
    				editAppRequest.DefaultDeployment.Name = "vCenter Clone VM From VM";
    				testShellAPI.ExecuteServiceCommand(reservationId, new[]{editAppsRequest}, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    PrepareSandboxConnectivity

    Prepare Sandbox Connectivity

    Syntax

    PrepareSandboxConnectivity(reservationId, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.PrepareSandboxConnectivity(reservationId, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    CleanupSandboxConnectivity

    Cleanup Sandbox Connectivity

    Syntax

    CleanupSandboxConnectivity(reservationId, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.CleanupSandboxConnectivity(reservationId, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    EnqueueEnvironmentCommandEnqueue an environment command.

    Enqueues a command to be executed for the specified reservation.

    Syntax

    EnqueueEnvironmentCommand(reservationId,commandName,commandInputs,printOutput);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringcommandName
    Specify the name of the command.
    string[,]commandInputs
    Specify a matrix of input names and values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.EnqueueEnvironmentCommand(reservationId, "ExampleCommand", new string[,]{{"input1", "abc"}}, YesNoOptions.Yes);
    			

    back to TOC

    ExecuteEnvironmentCommandExecute an environment command.

    Executes a command for the specified reservation.

    Syntax

    ExecuteEnvironmentCommand(reservationId,commandName,commandInputs,printOutput,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringcommandName
    Specify the name of the command.
    string[,]commandInputs
    Specify a matrix of input names and values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.ExecuteEnvironmentCommand(reservationId, "ExampleCommand", new string[,]{{"input1", "abc"}}, YesNoOptions.Yes, out output, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    EnqueueCommandEnqueue a command.

    Enqueues a command to be executed for the specified target.

    Syntax

    EnqueueCommand(reservationId,targetName,targetType,commandName,commandInputs,printOutput);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringtargetName
    Specify the name of the target according to the target type: for resources - specify the resouce's name, for services - the service's alias.
    CommandTargetTypetargetType
    Specify the target type for command execution, possible values are: Resource, Service, App.
    stringcommandName
    Specify the name of the command.
    string[,]commandInputs
    Specify a matrix of input names and values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.EnqueueCommand(reservationId, "Router 1234", CommandTargetType.Resource, "ExampleCommand", new string[,]{{"input1", "abc"}}, YesNoOptions.Yes);
    			

    back to TOC

    ExecuteCommandExecute a command.

    Executes a command for the specified target.

    Syntax

    ExecuteCommand(reservationId,targetName,targetType,commandName,commandInputs,printOutput,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringtargetName
    Specify the name of the target according to the target type: for resources - specify the resouce's name, for services - the service's alias.
    CommandTargetTypetargetType
    Specify the target type for command execution, possible values are: Resource, Service, App.
    stringcommandName
    Specify the name of the command.
    string[,]commandInputs
    Specify a matrix of input names and values required for executing the command.
    YesNoOptionsprintOutput
    Defines whether to print the command output in the reservation command output window.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.ExecuteCommand(reservationId, "Router 1234", CommandTargetType.Resource, "ExampleCommand", new string[,]{{"input1", "abc"}}, YesNoOptions.Yes, out output, out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output="success"/>

    back to TOC

    FindResources

    Retrieves resources that match all the specified search parameters, and all reservations associated with the search results.

    Syntax

    FindResources(resourceFamily,resourceModel,attributeValues,showAllDomains,resourceFullName,exactName,includeSubResources,resourceAddress,resourceUniqueIdentifier,maxResults,includeExcludedResources,out resources,out reservations,out usageSummary,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFamily
    Specify the name of the resource family.
    stringresourceModel
    Specify the resource model.
    string[,]attributeValues
    Specify an array of one or more attributes and attribute values.
    out string[,]resources
    All resources that match the specified query conditions.
    YesNoOptionsshowAllDomains
    Show all domains associated with the logged in user.
    stringresourceFullName
    Specify part of or the full name of the resource.
    YesNoOptionsexactName
    Specify whether to search the exact given name or not.
    YesNoOptionsincludeSubResources
    Specify whether to retrieve the sub resources once the parent matches the name.
    stringresourceAddress
    Specify the resource address. Can be partial (e.g. '192.168.').
    stringresourceUniqueIdentifier
    Specify the resource unique identifier.
    intmaxResults
    Specify the maximum number of resources to return.
    YesNoOptionsincludeExcludedResources
    Specify whether to retrieve resources that are excluded
    out string[,]reservations
    All reservations for the resources that match the specified query conditions.
    out string[,]usageSummary
    Specify the number used connected resources, this data will be available only on top level resource.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] resources, reservations;
    				string resultXml;
    				testShellAPI.FindResources("Generic Chassis", "", false, new string[,]{{"SW_Version","1.3"}},out resources,out reservations,out usageSummary,out resultXml);
    			

    Output

  • resources
  • 
    				{{"Index","Name","Description","Address","FullName","FullAddress","ResourceFamilyName","ResourceModelName","Status","Permissions", "ConnectedTo", "FullPath"},
    				{"1","Router 1234","a new description for the resource","192.168.1.201","Lab Routers/Router 1234","192.168.1.201","Generic Chassis","Generic Chassis Model","Available","ReadOnly"}}
    			
  • reservations
  • {{"ResourceIndex","ReservationName","Owner","StartTime","EndTime"}}
  • usageSummary
  • {{"ResourceIndex", "NumOfReserved", "NumOfShared", "NumOfNotInReservation"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Resources>
    				<Resource Name="Router 1234" Description="a new description for the resource" Address="192.168.1.201" FullName="Lab Routers/Router 1234" FullPath="Lab Routers/Router 1234"  FullAddress="192.168.1.201" ResourceFamilyName="Generic Chassis" ResourceModelName="Generic Chassis Model" Status="Available" Permission="ReadOnly">
    				<Reservations/>
    				<UsageSummary NumOfNotInReservation="130" NumOfReserved="14" NumOfShared="0"/>
    				</Resource>
    				</Resources>
    				</ResponseInfo>
    			

    back to TOC

    FindResourcesInTimeRange

    Retrieves resources that match all the specified search parameters, and all reservations in the specified time range associated with the search results.

    Syntax

    FindResourcesInTimeRange(resourceFamily,resourceModel,fromTime,untilTime,attributeValues,showAllDomains,resourceFullName,exactName,includeSubResources,resourceAddress,resourceUniqueIdentifier,maxResults,out resources,out reservations,out usageSummary,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFamily
    Specify the name of the resource family.
    stringresourceModel
    Specify the resource model.
    DateTimefromTime
    Specify from which future time and date to check the resource's availability.
    DateTimeuntilTime
    Specify until which time and date to check the resource's availability.
    string[,]attributeValues
    Specify an array of one or more attributes and attribute values.
    YesNoOptionsshowAllDomains
    Show all domains associated with the logged in user.
    stringresourceFullName
    Specify part of or the full name of the resource.
    YesNoOptionsexactName
    Specify whether to search the exact given name or not.
    YesNoOptionsincludeSubResources
    Specify whether to retrieve the sub resources once the parent matches the name.
    stringresourceAddress
    Specify the resource address. Can be partial (e.g. '192.168.').
    stringresourceUniqueIdentifier
    Specify the resource unique identifier.
    intmaxResults
    Specify the maximum number of resources to return.
    out string[,]resources
    All resources that match the specified query conditions.
    out string[,]reservations
    All reservations for the resources that match the specified query conditions.
    out string[,]usageSummary
    Specify the number used connected resources, this data will be available only on top level resource.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] resources, reservations;
    				string resultXml;
    				testShellAPI.FindResourcesInTimeRange("Generic Chassis", "", new DateTime(2012, 3, 1, 0, 0, 0), new DateTime(2012, 5, 31, 23, 59, 59), new string[,]{{"SW_Version","1.3"}}, false,out resources,out reservations,out usageSummary,out resultXml);
    			

    Output

  • resources
  • 
    				{{"Index","Name","Description","Address","FullName","FullAddress","ResourceFamilyName","ResourceModelName","Status", "Permissions", "ConnectedTo", "FullPath"},
    				{"1","Router 1234","a new description for the resource","192.168.1.201","Lab Routers/Router 1234","192.168.1.201","Generic Chassis","Generic Chassis Model","Available","ReadOnly"}}
    			
  • reservations
  • {{"ResourceIndex","ReservationName","Owner","StartTime","EndTime"}}
  • usageSummary
  • {{"ResourceIndex", "NumOfReserved", "NumOfShared", "NumOfNotInReservation"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Resources>
    				<Resource Name="Router 1234" Description="a new description for the resource" Address="192.168.1.201" FullName="Lab Routers/Router 1234" FullPath="Lab Routers/Router 1234" FullAddress="192.168.1.201" ResourceFamilyName="Generic Chassis" ResourceModelName="Generic Chassis Model" Status="Available" Permission="ReadOnly">
    				<Reservations/>
    				<UsageSummary NumOfNotInReservation="130" NumOfReserved="14" NumOfShared="0"/>
    				</Resource>
    				</Resources>
    				</ResponseInfo>
    			

    back to TOC

    GetReservationResourcesPositionsGet resource positions in a reservation.

    Retrieves the x/y coordinates for all resources in the reservation's diagram.

    Syntax

    GetReservationResourcesPositions(reservationId,out layout,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out string[,]layout
    All the resources and their positions in the diagram.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string[,] layout;
    				string resultXml;
    				testShellAPI.GetReservationResourcesPositions(reservationId, out layout, out resultXml);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo>
    				<layout/>
    				</ResponseInfo>
    			

    back to TOC

    GetRoutesSolutionGet solution for specified routes.

    Calculates possible routes between the supplied endpoints and returns their details, without saving, connecting or modifying the reservation in any way.

    Syntax

    GetRoutesSolution(reservationId,sourceResourcesFullName,targetResourcesFullName,mappingType,maxHops,isShared,out segments,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]sourceResourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: RootResourceName/ResourceName
    string[]targetResourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: RootResourceName/ResourceName
    MappingTypemappingType
    Specify bidirectional or unidirectional as the mapping type.
    intmaxHops
    Specify the maximum number or allowed hops.
    YesNoOptionsisShared
    Specify whether these routes are shared. Shared routes can be used in more than one reservation.
    out string[,]routes
    Routes and route values associated with the activated topologies.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] routes;
    				testShellAPI.GetRoutesSolution(reservationId,new string[]{"Router 1234/Port 1"},new string[]{"GenericResource 1234/Port 1"},MappingType.Bidirectional,2, YesNoOptions.No,out routes,out resultXml);
    			

    Output

  • routes
  • {{"Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 1","GenericResource 1234/Port 1"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 1"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 1" Target="GenericResource 1234/Port 1"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    GenerateUtilizationReportGenerate a utilization report.

    Generates a utilization report for the specified resources. To generate a report for all resources, leave the resourceFullName and resourceModel parameters blank.

    Syntax

    GenerateUtilizationReport(resourceFamilyName,fromDate,toDate,resourceFullName,resourceModelName,includeChildResources,groupBy,utilizationReportType,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFamilyName
    Specify the name of the resource family.
    DateTimefromDate
    Specify the start time and date.
    DateTimetoDate
    Specify the end time and date.
    stringresourceFullName
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName.
    stringresourceModelName
    Specify the resource model.
    YesNoOptionsincludeChildResources
    Specify whether to include child resources utilization.
    UtilizationReportGroupByOptiongroupBy
    Specify how to group the utilization results: Resource, User, or Machine
    UtilizationReportTypeOptionutilizationReportType
    Specify the report type: Lock or Mapping.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.GenerateUtilizationReport("Router", new DateTime(2012, 3, 1, 0, 0, 0), new DateTime(2012, 5, 31, 23, 59, 59), "", "", YesNoOptions.No, UtilizationReportGroupByOption.Resource, UtilizationReportTypeOption.Lock, out resultXml);
    			

    back to TOC

    GetActiveTopologyNamesRetrieve a user's reserved topologies.

    Retrieves all active reserved topologies for the current (logged in) user.

    Syntax

    GetActiveTopologyNames(out reservedTopologyNames,out resultXml);

    Parameters

    TypeNameDescription
    out string[]reservedTopologyNames
    The list of active topologies reserved for the current user.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string[] reservedTopologyNames;
    				testShellAPI.GetActiveTopologyNames(out reservedTopologyNames,out resultXml);
    			

    Output

  • reservedTopologyNames
  • {"Temp Automation Resources/TP1"}
  • resultXml
  • 
    				<ResponseInfo>
    				<Topologies>
    				<TopologyName>Temp Automation Resources/TP1</TopologyName>
    				</Topologies>
    				</ResponseInfo>
    			

    back to TOC

    GetAllUsersDetailsRetrieve all users and user settings.

    Retrieves all users and their settings.

    Syntax

    GetAllUserDetails(out userDetails,out resultXml);

    Parameters

    TypeNameDescription
    out string[,]userDetails
    User settings for the specified user.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetAllUsersDetails();
    			

    Output

  • userDetails
  • 
    				{{"Name","Email","IsAdmin","IsActive","IsDomainAdmin","DomainName"},{"admin","admin@work.com","True","True","False",""},{"User1234","user1234@work.com","True","True","False",""}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Users>
    				<User Name="admin" IsAdmin="true" IsActive="true" IsDomainAdmin="false">
    				<Groups>
    				<Group Name="System Administrators" Description="Built in group, all members have administrative rights.">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="A domain that includes all available resources" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				</Group>
    				<Group Name="Everyone">
    				<TestShellDomains/>
    				</Group>
    				</Groups>
    				</User>
    				<User Name="User1234" IsAdmin="false" IsActive="true" IsDomainAdmin="false" Email="user1234@work.com">
    				<Groups>
    				<Group Name="Everyone">
    				<TestShellDomains/>
    				</Group>
    				</Groups>
    				</User>
    				<User Name="User2345" IsAdmin="false" IsActive="true" IsDomainAdmin="false" Email="">
    				<Groups>
    				<Group Name="Everyone">
    				<TestShellDomains/>
    				</Group>
    				</Groups>
    				</User>
    				</Users>
    				</ResponseInfo>
    			

    back to TOC

    GetAttributeValueRetrieve an attribute's value.

    Retrieves the value of the specified attribute

    Syntax

    GetAttributeValue(resourceFullPath,attributeName,out attributeValue,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringattributeName
    Specify the attribute name.
    out stringattributeValue
    The attribute value.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string attributeValue;
    				string resultXml;
    				testShellAPI.GetAttributeValue("Router 1234", "SW_Version", out attributeValue, out resultXml);
    			

    Output

  • attributeValue
  • 1.3
  • resultXml
  • <ResponseInfo Name="SW_Version" Value="1.3"/>

    back to TOC

    GetCategoriesOfTopologyRetrieves all categories of a given topology.

    Retrieves all categories of given topology.

    Syntax

    GetCategoriesOfTopology(topologyPath, out categories, out resultXml);

    Parameters

    TypeNameDescription
    stringtopologyPath
    Specify topology (name or full path). For full path, specify the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    out stringcategories
    Specify a list of all categories belong to given topology.
    out stringresultXml
    Specify the variable for the XML output. If a variable is not provided, the results will be sent to stdout.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetCategoriesOfTopology("Folder1/exampleTopology");
    			

    Output

  • Categories
  • {['sampleCategory', 'Category2'; 'hello', 'bye']}
  • resultXml
  • 
    				<ResponseInfo>
    				<Categories>
    				<Category Name="sampleCategory" Value="hello"/>
    				<Category Name="Category2" Value="bye"/>
    				</Categories>
    				</ResponseInfo>
    			

    back to TOC

    GetCurrentReservationsRetrieve current reservations.

    Retrieves current reservations for the specified owner. If an owner is not provided, this method retrieves all current reservations.

    Syntax

    GetCurrentReservations(reservationOwner,out reservations,out permittedUsers,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationOwner
    Specify the user name of the reservation owner.
    out string[,]reservations
    All current reservations for the specified owner, or all current reservations (if no owner is specified).
    out string[,]permittedUsers
    Lists users with [active | full] access to the specified reservation.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] reservations;
    				string resultXml;
    				testShellAPI.GetCurrentReservations(admin, out reservations,out permittedUsers, out resultXml);
    			

    Output

  • reservations
  • 
    				{{"Id","Name","Description","Start","End","Owner","Booked","Status","RecurrenceType","Topologies","ActualEndTime","CreateDate","ModificationDate","Provisioning Status","DomainName"},
    				{"65b45c9b-7694-4a42-b8fa-0239109b5246","Reservation","","6/19/2012 2:30:00 PM","6/19/2012 4:30:00 PM","admin","True","Overtime","None","Topologies/Lab 1/Topology,Topologies/Lab 1/TrafficTopology,Topologies/Lab 1/TrafficTopology1","","6/19/2012 2:30:23 PM","6/19/2012 2:37:55 PM","Pending","Global"}}
    			
  • permittedUsers
  • 
    				{{ReservationId, UserName}
    				{65b45c9b-7694-4a42-b8fa-0239109b5246, admin}
    				{65b45c9b-7694-4a42-b8fa-0239109b5246, user1}
    				{65b45c9b-7694-4a42-b8fa-0239109b5246, user2}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Reservations>
    				<Reservation Id="65b45c9b-7694-4a42-b8fa-0239109b5246" Name="Reservation" StartTime="2012-06-19T14:30:00" EndTime="2012-06-19T16:30:00" RecurrenceType="None" Owner="admin" Booked="true" Status="Overtime" ProvisioningStatus="Ready" ActualEndTime="" CreateDate="2012-06-19T14:30:23" ModificationDate="2012-06-19T14:37:55" DomainName="Global">
    				<Topologies>
    				<TopologyName>Topologies/Lab 1/Topology</TopologyName>
    				<TopologyName>Topologies/Lab 1/TrafficTopology</TopologyName>
    				<TopologyName>Topologies/Lab 1/TrafficTopology1</TopologyName>
    				</Topologies>
    				</Reservation>
    				</Reservations>
    				</ResponseInfo>
    			

    back to TOC

    GetDomainDetailsRetrieves a domain's details including groups, topologies and resources associated with the specified domain.

    Retrieves a domain's details including groups, topologies and resources associated with the specified domain.

    Syntax

    GetDomainDetails(domainName,out domainTopologiesFolder,out domainGroups,out domainTopologies,out domainResources,out resultXml);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    out stringdomainTopologiesFolder
    The topologies folder of the domain.
    out string[,]domainGroups
    Groups and their associated values for the specified domain.
    out string[,]domainTopologies
    Topologies and their associated values for the specified domain.
    out string[,]domainResources
    Resources and their associated values for the specified domain.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string domainTopologiesFolder;
    				string[,] domainGroups, domainTopologies, domainResources;
    				string resultXml;
    				testShellAPI.GetDomainDetails("Domain1",out domainTopologiesFolder,out domainGroups,out domainTopologies,out domainResources,out resultXml);
    			

    Output

  • domainTopologiesFolder
  • "Root\Domain1 topologies"
  • domainGroups
  • {{"Animals","","Regular"}}
  • domainTopologies
  • {{"Topology",""}}
  • domainResources
  • {{"b1","b1"}}
  • resultXml
  • 
    				<ResponseInfo Name="Domain1" Description="" TopologiesFolder="Root\Domain1 topologies">
    				<Groups>
    				<Group Name="Animals" Role="Regular"></Group>
    				</Groups>
    				<Topologies>
    				<Topology Name="Topology" Description=""></Topology>
    				</Topologies>
    				<Resources>
    				<Resource Name="b1" Path="b1"></Resource>
    				</Resources>
    				</ResponseInfo>
    			

    back to TOC

    GetFolderContentRetrieve content for a specified path.

    Retrieves content for the specified path.

    Syntax

    GetFolderContent(fullPath, showAllDomains,out content,out resultXml);

    Parameters

    TypeNameDescription
    stringfullPath
    Specify the full folder name. Include the full path from the root to a specific folder, separated by slashes. For example: ResourceFamilyFolder/ResourceModelFolder.
    YesNoOptionsshowAllDomains
    Show all domains associated with the logged in user.
    out string[,]content
    Content and content parameters for the specified resource.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetFolderContent("Lab Routers");
    			

    Output

  • content
  • {{"Name","Type"},{"Router 1234","Resource","ReadWrite"},{"Router 4321","Resource","ReadWrite"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<ContentArray>
    				<Content Name="Router 1234" Type="Resource" Permissions="ReadOnly"/>
    				<Content Name="Router 4321" Type="Resource" Permissions="ReadOnly"/>
    				</ContentArray>
    				</ResponseInfo>
    			

    back to TOC

    MoveFolderAllows to change the location of a folder (and all its content, including sub folders) in the folder hierarchy.

    Move a folder (and all its content, including sub folders) in the folder hierarchy.

    Syntax

    MoveFolder(originalFolder,targetFolder);

    Parameters

    TypeNameDescription
    stringoriginalFolder
    Path of the folder to be moved.
    stringtargetFolder
    The path of the new containing folder. To move a folder to root, value should be empty.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.MoveFolder("MyFolder", "MyCompanyFolder");
    			

    back to TOC

    GetGroupDomainsRetrieve a group's domains.

    Retrieves all domains associated with a group.

    Syntax

    GetGroupDomains(groupName,out domains,out resultXml);

    Parameters

    TypeNameDescription
    stringgroupName
    Specify the name of the group.
    out string[,]domains
    All domains associated with the specified group.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetGroupDomains("QA_Users");
    			

    Output

  • domains
  • {{"Name", "Description", "Id"}, {"Global", "A domain that includes all available resources", "dbaf480c-09f7-46d3-a2e2-e35d3e374a16"}}

    back to TOC

    GetGroupsDetailsRetrieve all system groups.

    Retrieves all groups, including members, roles and associated domains for each group.

    Syntax

    GetGroupsDetails(out groups,out resultXml);

    Parameters

    TypeNameDescription
    out string[,]groups
    Retrieves all groups in the system, together with the description and role for each group.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetGroupsDetails();
    			

    Output

  • groups
  • {{"Name","Description"}, {"System Administrators","Built in group, all members have administrative rights."}, {"Domain Administrators","Built in group, all members have administrative Domain rights."}, {"QA_Users","QA users"}, {"RND users",""}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Groups>
    				<Group Name="System Administrators" Description="Built in group, all members have administrative rights." GroupRole="SystemAdmin">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="A domain that includes all available resources" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				<Users>
    				<User Name="admin" IsAdmin="true" IsActive="true" IsDomainAdmin="false">
    				<Groups>
    				<Group Name="System Administrators" Description="Built in group, all members have administrative rights.">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="A domain that includes all available resources" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				</Group>
    				<Group Name="Everyone">
    				<TestShellDomains/>
    				</Group>
    				<Group Name="Lab1">
    				<TestShellDomains>
    				<TestShellDomain Name="Lab1" Description="" Id="71aa4f7e-174d-4df1-b50a-59e98f09005c"/>
    				</TestShellDomains>
    				</Group>
    				</Groups>
    				</User>
    				</Users>
    				</Group>
    				<Group Name="Domain Administrators" Description="Built in group, all members have administrative Domain rights."  GroupRole="DomainAdmin">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="A domain that includes all available resources" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				<Users>
    				<User Name="User1234" IsAdmin="false" IsActive="true" IsDomainAdmin="true" Email="">
    				<Groups>
    				<Group Name="Domain Administrators" Description="Built in group, all members have administrative Domain rights.">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				</Group>
    				<Group Name="Everyone">
    				<TestShellDomains/>
    				</Group>
    				</Groups>
    				</User>
    				</Users>
    				</Group>
    				<Group Name="QA_Users" Description="QA users" GroupRole="Regular">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="A domain that includes all available resources" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				<Users>
    				<User Name="User1234" IsAdmin="false" IsActive="true" IsDomainAdmin="false" Email="user1234@work.com">
    				<Groups>
    				<Group Name="Everyone">
    				<TestShellDomains/>
    				</Group>
    				<Group Name="QA_Users" Description="QA users">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="A domain that includes all available resources" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				</Group>
    				</Groups>
    				</User>
    				<User Name="User2345" IsAdmin="false" IsActive="true" IsDomainAdmin="false" Email="">
    				<Groups>
    				<Group Name="Everyone">
    				<TestShellDomains/>
    				</Group>
    				<Group Name="QA_Users" Description="QA users">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="A domain that includes all available resources" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				</Group>
    				</Groups>
    				</User>
    				</Users>
    				</Group>
    				<Group Name="RND_Users" GroupRole="Regular">
    				<TestShellDomains>
    				<TestShellDomain Name="Global" Description="A domain that includes all available resources" Id="dbaf480c-09f7-46d3-a2e2-e35d3e374a16"/>
    				</TestShellDomains>
    				<Users/>
    				</Group>
    				</Groups>
    				</ResponseInfo>
    			

    back to TOC

    GetLockedResourcesRetrieve a list of locked resources.

    Retrieves locked resources for a specific user, a specific computer, or a specific folder. If none of these are specified, this method retrieves the list of locked resources for all users, on all machines, in all folders.

    Syntax

    GetLockedResources(user,machine,folderFullPath,out reservations,out resources,out resultXml);

    Parameters

    TypeNameDescription
    stringuser
    Specify a user name to retrieve locked resources for that user.
    stringmachine
    Specify a machine name to retrieve locked resources for that computer.
    stringfolderFullPath
    Specify the full folder name. Include the full path from the root to a specific folder, separated by slashes. For example: ResourceFamilyFolder/ResourceModelFolder.
    out string[,]reservations
    Retrieves all reservations for the resources that match the specified query conditions.
    out string[,]resources
    Resources and resource values associated with the specified topology.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] reservations,resources;
    				testShellAPI.GetLockedResources("admin","","",out reservations,out resources,out resultXml);
    			

    Output

  • reservations
  • {{"Index","Name","Owner","Created"},{"1","Immediate reservation","admin","6/20/2012 3:05:06 PM"}}
  • resources
  • 
    				{{"ReservationIndex","ReservationName","Name","Address","FullAddress","RootAddress","ResourceModelName","FolderFullPath","Excluded"},
    				{"1","Immediate reservation","GenericResource 1234/Port 2","2","192.168.1.20/2","192.168.1.20","Generic Port Model","Temp Automation Resources","False"},
    				{"1","Immediate reservation","GenericResource 1234/Port 1","1","192.168.1.20/1","192.168.1.20","Generic Port Model","Temp Automation Resources","False"}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Reservations>
    				<Reservation Name="Immediate reservation" Owner="admin" Created="2012-06-20T15:05:06">
    				<LockedResources>
    				<Resource Name="GenericResource 1234/Port 2" FolderFullPath="Temp Automation Resources" Address="2" FullAddress="192.168.1.20/2" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Locked="true" Excluded="false"/>
    				<Resource Name="GenericResource 1234/Port 1" FolderFullPath="Temp Automation Resources" Address="1" FullAddress="192.168.1.20/1" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Locked="true" Excluded="false"/>
    				</LockedResources>
    				</Reservation>
    				</Reservations>
    				</ResponseInfo>
    			

    back to TOC

    GetReservationDetailsRetrieve reservation details and parameters.

    Retrieves all details and parameters for a specified reservation, including its resources, routes and route segments, topologies, and reservation conflicts.The data cached for 5 seconds.

    Syntax

    GetReservationDetails(reservationId, disableCache, out name, out description, out creationTime, out startTime, out endTime,out reservationStatus, out provisioningStatus, out resources, out conflicts, out topologies,out topologyResources, out topologyRoutes, out topologyRouteSegments, out topologyInstructions, out connectedRoutes,out connectedRoutesSegments,out reservationRoutes, out reservationRouteSegments, out permittedUsers, out domainName, out topologyResourcesAttributes, out connectors, out connectorAttributes, out liveStatus,out services, out serviceAttributes, out apps,out setupStage, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    YesNoOptionsdisableCache
    Specify if the reservation detail is new or cached
    out stringname
    The name of the reservation associated with the specified reservation ID.
    out stringdescription
    The description of the reservation associated with the specified reservation ID.
    out stringCreation Time
    The creation time and date for the specified reservation.
    out stringstartTime
    The start time and date for the specified reservation.
    out stringendTime
    The end time and date for the specified reservation.
    out stringreservationStatus
    Indicates the current reservation status.
    out stringprovisioningStatus
    Indicates the current provisioning status.
    out string[,]resources
    Resources and their associated values for the specified reservation.
    out string[,]conflicts
    Resource conflicts and their associated values for the specified reservation.
    out string[,]topologies
    Topologies and their associated values for the specified reservation.
    out string[,]topologyResources
    Topology resources and their associated values for the specified reservation.
    out string[,]topologyRoutes
    Topology routes in the specified reservation.
    out string[,]topologyRouteSegments
    Segment details for topology routes in the specified reservation. Each route is comprised of one or more segments.
    out string[,]topologyInstructions
    Topology instructions.
    out string[,]connectedRoutes
    Routes currently connected in the specified reservation.
    out string[,]connectedRoutesSegments
    Segment details for connected routes in the specified reservation. Each route is comprised of one or more segments.
    out string[,]reservationRoutes
    Routes in the specified reservation.
    out string[,]reservationRouteSegments
    Segment details for routes in the specified reservation. Each route is comprised of one or more segments.
    out string[,]permittedUsers
    Lists users with [active | full] access to the specified reservation.
    out stringdomainName
    The domain name of the specified reservation.
    out string[,]topologyResourcesAttributes
    Topology resources and their associated attribute changes for the specified reservation.
    out string[,]connectors
    Visual connectors associated with the specified reservation.
    out string[,]ConnectorAttributes
    Visual connectors attributes associated with a specified connector.
    out string[,]LiveStatus
    Gets the live status of the reservations.
    out string[,]services
    Matrix of service instances.
    out string[,]serviceAttributes
    Matrix of attributes of the services.
    out string[,]apps
    Apps associated with the specified reservation..
    out stringSetupStage
    Reservation's setup stage
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string name, description;
    				string startTime,endTime;
    				string reservationStatus, provisioningStatus;
    				string domainName;
    				string setupStage;
    				string[,] resources, conflicts, topologies, topologyResources, topologyRoutes, topologyRouteSegments,topologyInstructions, connectedRoutes, connectedRoutesSegments, reservationRoutes, reservationRouteSegments, permittedUsers, topologyResourcesAttributes, connectors, connectorAttributes, apps;
    				string resultXml;
    				testShellAPI.GetReservationDetails(reservationId, true,out name,out description, out creationTime,out startTime,out endTime,out reservationStatus,out provisioningStatus,out resources,out conflicts,out topologies,out topologyResources,out topologyRoutes,out topologyRouteSegments,out topologyInstructions,out connectedRoutes,out connectedRoutesSegments,out reservationRoutes,out reservationRouteSegments,out permittedUsers,out domainName,out topologyResourcesAttributes, out connectors, out connectorAttributes, out liveStatus,out services, out servicrAttributes, out apps,out setupStage, out resultXml);
    			

    Output

  • name
  • test reservation
  • description
  • My Reservation
  • creationTime
  • 01/01/2015 10:00:00
  • startTime
  • 01/01/2015 10:00:00
  • endTime
  • 01/01/2015 11:00:00
  • reservationStatus
  • Pending
  • provisioningStatus
  • Ready
  • resources
  • {{"Name","FolderFullPath","FullAddress","Shared","Availability","Locked","Released","ResourceFamilyName","ResourceModelName"}}
  • conflicts
  • {{"ResourceName","ConflictType","Topology","ConflictWith","ConflictWithUser","ConflictStarted","ConflictPlannedEndTime"}}
  • topologies
  • {{"Index","Name","Type","State"}}
  • topologyResources
  • {{"TopologyIndex","Name","FullAddress","Shared","Availability","Locked","Released","ResourceFamilyName","ResourceModelName"}}
  • topologyRoutes
  • {{"Index","TopologyIndex","Source","Target","RouteType","Alias","Shared"}}
  • topologyRouteSegments
  • {{"RouteIndex","Source","Target"}}
  • topologyInstructions
  • {{"topology1","topology2","topology3"}}
  • connectedRoutes
  • {{"Index","Source","Target","RouteType","Alias","Shared"}}
  • connectedRoutesSegments
  • {{"RouteIndex","Source","Target"}}
  • reservationRoutes
  • {{"Index","Source","Target","RouteType","Alias","Shared"}}
  • reservationRoutesSegments
  • {{"RouteIndex","Source","Target"}}
  • permittedUsers
  • {{"user1","user2","user3"}}
  • domainName
  • Global
  • topologyResourcesAttributes
  • 
    				{{"TopologyIndex","Name","Alias", "AttributeName", "AttributeValue", Usage},
    				{"1", "t2", "test*", "Protocol", "Transparent", "Additional"}}
    			
  • connectors
  • 
    				{{"Index","Source","Target","Direction", "Alias"},
    				{"1","Server1/Port1", "Server2/Port2", "Bi", "Connector1"}}
    			
  • connectorAttributes
  • 
    				{{"ConnectorIndex","Name","Value"},
    				{"1","Duplex", "Half"}}
    			
  • liveStatus
  • 
    				{{"Id","LiveStatusName","LiveStatusDescription"},
    				{"90205def-6c53-4cf5-abfa-632b8486a968","Pass",""}}
    			
  • services
  • 
    				{{"Index","ServiceName","Alias"},
    				{"1","Sql1","Sql64"}}
    			
  • serviceAttributes
  • 
    				{{"ServiceInstanceIndex","Name","Value"},
    				{"1","Duplex", "Half"}}
    			
  • apps
  • 
    				{{"Name","LogicalResourceFamily","LogicalResourceModel"},
    				{"App name","Deployed app family","Deployed app model"}}
    			
  • setupStage
  • 
    				"None"
    			
  • resultXml
  • 
    
    				<ResponseInfo xsi:type="GetReservationDescriptionResponseInfo">
    				<ReservationDescription Id="a97ce9c2-48eb-420e-85b7-2318106c35a3" Name="Sandbox-5-16-2017 15-59" StartTime="16/05/2017 15:59:00" EndTime="16/05/2017 17:59:00" RecurrenceType="None" Owner="admin" Booked="true" Status="Started" ProvisioningStatus="Not Run" ActualEndTime="" CreateDate="16/05/2017 15:59:21" ModificationDate="16/05/2017 16:01:38" DomainName="Global">
    				<Topologies>
    				<TopologyName>Environment-03-02-2015 18-21</TopologyName>
    				</Topologies>
    				<TopologiesInfo>
    				<Topology Name="Environment-03-02-2015 18-21" Alias="Environment-03-02-2015 18-21">
    				<Type>Regular</Type>
    				<State>Pending</State>
    				</Topology>
    				</TopologiesInfo>
    				<PermittedUsers>
    				<PermittedUser>admin</PermittedUser>
    				</PermittedUsers>
    				<Resources>
    				<ReservedResource Name="Database_ec513a05" FolderFullPath="" FullAddress="NA" Shared="false" Availability="Available" Locked="false" Released="false" ResourceFamilyName="Generic App Family" ResourceModelName="Generic App Model" CreatedByUser="admin" CreatedInDomain="Global" CreatedInReservation="a97ce9c2-48eb-420e-85b7-2318106c35a3">
    				<VmDetails UID="4232175a-6a64-bb3c-1cca-e8699845549b" CloudProviderFullName="testing">
    				<VmCustomParams>
    				<VmCustomParam Name="ip_regex" Value="" />
    				<VmCustomParam Name="auto_power_on" Value="True" />
    				<VmCustomParam Name="auto_power_off" Value="True" />
    				<VmCustomParam Name="wait_for_ip" Value="True" />
    				<VmCustomParam Name="auto_delete" Value="True" />
    				<VmCustomParam Name="refresh_ip_timeout" Value="600" />
    				<VmCustomParam Name="autoload" Value="True" />
    				</VmCustomParams>
    				</VmDetails>
    				<AppDetails AppName="Database" />
    				</ReservedResource>
    				</Resources>
    				<TopologiesReservedResources />
    				<Conflicts />
    				<TopologiesRouteInfo />
    				<TopologiesResourcesAttributeInfo />
    				<TopologiesInstructionsInfo />
    				<ActiveRoutesInfo />
    				<RequestedRoutesInfo />
    				<Connectors />
    				<Apps>
    				<ReservedApp Name="MonitoringApp">
    				<LogicalResource Family="Monitoring" Model="DefaultMonitoring"/>
    				</ReservedApp>
    				</Apps>
    				<ReservationLiveStatus ReservationId="a97ce9c2-48eb-420e-85b7-2318106c35a3" />
    				<SetupStage>None</SetupStage>
    				<Services />
    				</ReservationDescription>
    				</ResponseInfo>
    			

    back to TOC

    GetResourcesLabelsInReservationGet resources associated with labels in reservation.

    Retrieves all resources associated with labels in the specified reservation.

    Syntax

    GetResourcesLabelsInReservation(reservationId, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.GetResourcesLabelsInReservation("af626b88-458b-4e7a-9054-c03d8cffa260", out resultXml);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo xsi:type="GetResourcesLabelsInTopologyResponseInfo">
    				<Resources>			
    				<Resource Name="res" Type="Resource" LabelName="label1">
    				</Resource>
    				<Resources>			
    				<Resource Name="res2" Type="Resource" LabelName="label2">
    				</Resource>
    				<Resources>			
    				<Resource Name="service1" Type="Service" LabelName="label3">
    				</Resource>
    				<Resources>			
    				<Resource Name="app1" Type="App" LabelName="label4">
    				</Resource>
    				</Resources>
    				</ResponseInfo>
    			

    back to TOC

    GetReservationInputsRetrieves all topology inputs for a specified reservation.

    Retrieves all topology inputs for a specified reservation.

    Syntax

    GetReservationInputs(reservationId, out globalInputs, out requirementsInputs, out additionalInfoInputs, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out string[,]globalInputs
    Global inputs associated with the specified reservation.
    out string[,]requirementsInputs
    Requirements inputs associated with the specified reservation.
    out string[,]additionalInfoInputs
    Additional info inputs associated with the specified reservation.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string resultXml;
    				string[,] globalInputs, requirementsInputs, additionalInfoInputs;
    				testShellAPI.GetReservationInputs(reservationId, out globalInputs, out requirementsInputs, out additionalInfoInputs, out resultXml);
    			

    Output

  • globalInputs
  • {{"Param Name", "Value", "Possible Values"}}
  • requirementsInputs
  • {{"Resource Name", "Param Name", "Value", "Input Type"}}
  • additionalInfoInputs
  • {{"Resource Name", "Param Name", "Value", "Possible Values"}}
  • resultXml
  • <ResponseInfo/>

    back to TOC

    GetReservationRemainingTimeRetrieve the amount of time until the end of a reservation.

    Retrieves the number of minutes remaining until the end of a specified reservation. If the reservation is running overtime, the remaining time will be reported as -1 minutes.

    Syntax

    GetReservationRemainingTime(reservationId,out reservationRemainingTimeInMinutes,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out doublereservationRemainingTimeInMinutes
    The number of minutes remaining until the reservation ends.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string resultXml;
    				double reminingTime;
    				testShellAPI.ExtendReservation(reservationId, out reminingTime, out resultXml);
    			

    Output

  • reservationRemainingTimeInMinutes
  • 26.4
  • resultXml
  • <ResponseInfo RemainingTimeInMinutes="26.4"/>

    back to TOC

    GetResourceAvailabilityGet resource availability.

    Get resource availability for the resources.

    Syntax

    GetResourceAvailability(resourcesNames,out resources,out reservations,out usageSummary,showAllDomains,out resultXml);

    Parameters

    TypeNameDescription
    string[]resourcesNames
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    out string[,]resources
    All resources that match the specified query conditions.
    out string[,]reservations
    All reservations for the resources that match the specified query conditions.
    out string[,]usageSummary
    Specify the number used connected resources, this data will be available only on top level resource
    YesNoOptionsshowAllDomains
    Show all domains associated with the logged in user.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[] resourcesNames = new[] { "Bridge6", "Bridge7" };
    				string[,] resources;
    				string[,] reservations;
    				string[,] usageSummary;
    				string xmlResult;
    				testShellAPI.GetResourceAvailability(resourcesNames, out resources, out reservations, out usageSummary, YesNoOptions.Yes, out xmlResult);
    			

    Output

  • resources
  • 
    				{{Index, Name, Description, Address, FullName, FullAddress, ResourceFamilyName, ResourceModelName, ReservedStatus, Excluded, Permission, ConnectedTo, FullPath}
    				{1, Bridge6, , 5, Bridge6, 5, Bridge, Bridge Generic Model, Shared, False, ReadWrite, ,Bridge6}
    				{2, Bridge7, , NA, Bridge7, NA, Bridge, Bridge Generic Model, Shared, False, ReadWrite, ,Bridge7}
    				{3, port1, , u, Bridge7/port1, NA/u, Bridge Port, Bridge Port Generic Model, Reserved, False, ReadWrite, Patch6\\jack2, Bridge7/port1}
    				{4, port1, , u, Bridge6/port1, 5/u, Bridge Port, Bridge Port Generic Model, Reserved, False, ReadWrite, Patch6\\jack1, Bridge6/port1}
    				{5, port2, , NA, Bridge6/port2, 5/NA, Bridge Port, Bridge Port Generic Model, Reserved, False, ReadWrite, Patch6\\jack4, Bridge6/port2}
    				{6, port2, , NA, Bridge7/port2, NA/NA, Bridge Port, Bridge Port Generic Model, Reserved, False, ReadWrite, Patch6\\jack5, Bridge7/port2}}
    			
  • reservations
  • 
    				{{ResourceIndex, ResourceName, ReservationId, ReservationName, Owner, StartTime, EndTime, Shared}
    				{1, Bridge6, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, True}
    				{2, Bridge7, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, True}
    				{3, Bridge7/port1, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, False}
    				{4, Bridge6/port1, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, False}
    				{5, Bridge6/port2, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, False}
    				{6, Bridge7/port2, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, False}}
    			
  • usageSummary
  • 
    				{{ResourceIndex, ResourceName, NumOfReserved, NumOfShared, NumOfNotInReservation}
    				{1, Bridge6, 2, 0, 0}{2, Bridge7, 2, 0, 0}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Resources>
    				<Resource Name="Bridge6" Address="5" FullName="Bridge6" FullAddress="5" ResourceFamilyName="Bridge" ResourceModelName="Bridge Generic Model" ReservedStatus="Shared" Excluded="false" Permission="ReadWrite" FullPath="Bridge6" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge6" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="true"></Reservation>
    				</Reservations>
    				<UsageSummary ResourceFullName="Bridge6" NumOfNotInReservation="0" NumOfReserved="2" NumOfShared="0"></UsageSummary>
    				</Resource>
    				<Resource Name="Bridge7" Address="NA" FullName="Bridge7" FullAddress="NA" ResourceFamilyName="Bridge" ResourceModelName="Bridge Generic Model" ReservedStatus="Shared" Excluded="false" Permission="ReadWrite" FullPath="Bridge7" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge7" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="true"></Reservation>
    				</Reservations>
    				<UsageSummary ResourceFullName="Bridge7" NumOfNotInReservation="0" NumOfReserved="2" NumOfShared="0"></UsageSummary>
    				</Resource>
    				<Resource Name="port1" Address="u" FullName="Bridge7/port1" FullAddress="NA/u" ResourceFamilyName="Bridge Port" ResourceModelName="Bridge Port Generic Model" ReservedStatus="Reserved" Excluded="false" Permission="ReadWrite" ConnectedTo="Patch6\jack2" FullPath="Bridge7/port1" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge7/port1" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="false"></Reservation>
    				</Reservations>
    				</Resource>
    				<Resource Name="port1" Address="u" FullName="Bridge6/port1" FullAddress="5/u" ResourceFamilyName="Bridge Port" ResourceModelName="Bridge Port Generic Model" ReservedStatus="Reserved" Excluded="false" Permission="ReadWrite" ConnectedTo="Patch6\jack1" FullPath="Bridge6/port1" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge6/port1" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="false"></Reservation>
    				</Reservations>
    				</Resource>
    				<Resource Name="port2" Address="NA" FullName="Bridge6/port2" FullAddress="5/NA" ResourceFamilyName="Bridge Port" ResourceModelName="Bridge Port Generic Model" ReservedStatus="Reserved" Excluded="false" Permission="ReadWrite" ConnectedTo="Patch6\jack4" FullPath="Bridge6/port2" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge6/port2" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="false"></Reservation>
    				</Reservations>
    				</Resource>
    				<Resource Name="port2" Address="NA" FullName="Bridge7/port2" FullAddress="NA/NA" ResourceFamilyName="Bridge Port" ResourceModelName="Bridge Port Generic Model" ReservedStatus="Reserved" Excluded="false" Permission="ReadWrite" ConnectedTo="Patch6\jack5" FullPath="Bridge7/port2" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge7/port2" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="false"></Reservation>
    				</Reservations>
    				</Resource>
    				</Resources>
    				</ResponseInfo>
    			

    back to TOC

    GetResourceAvailabilityInTimeRangeGet resource availability during a specific time range.

    Get resource availability for the resources in the specified time range.

    Syntax

    GetResourceAvailabilityInTimeRange(resourcesNames,startTime,endTime,showAllDomains,out resources,out reservations,out usageSummary,out resultXml);

    Parameters

    TypeNameDescription
    string[]resourcesNames
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    DateTimestartTime
    The start time of the reservation.
    DateTimeendTime
    The end time of the reservation.
    YesNoOptionsshowAllDomains
    Show all domains associated with the logged in user.
    out string[,]resources
    All resources that match the specified query conditions.
    out string[,]reservations
    All reservations for the resources that match the specified query conditions.
    out string[,]usageSummary
    Specify the number used connected resources, this data will be available only on top level resource
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[] resourcesNames = new[] { "Bridge6", "Bridge7" };
    				string[,] resources;
    				string[,] reservations;
    				string[,] usageSummary;
    				string xmlResult;
    				testShellAPI.GetResourceAvailabilityInTimeRange(resourcesNames, DateTime.Now, DateTime.Now.AddYears(1), YesNoOptions.Yes, out resources, out reservations, out usageSummary, out xmlResult);
    			

    Output

  • resources
  • 
    				{{Index, Name, Description, Address, FullName, FullAddress, ResourceFamilyName, ResourceModelName, ReservedStatus, Excluded, Permission, ConnectedTo, FullPath}
    				{1, Bridge6, , 5, Bridge6, 5, Bridge, Bridge Generic Model, Shared, False, ReadWrite, , Bridge6}
    				{2, Bridge7, , NA, Bridge7, NA, Bridge, Bridge Generic Model, Shared, False, ReadWrite, ,Bridge7}
    				{3, port1, , u, Bridge7/port1, NA/u, Bridge Port, Bridge Port Generic Model, Reserved, False, ReadWrite, Patch6\\jack2,Bridge7/port1}
    				{4, port1, , u, Bridge6/port1, 5/u, Bridge Port, Bridge Port Generic Model, Reserved, False, ReadWrite, Patch6\\jack1,Bridge6/port1}
    				{5, port2, , NA, Bridge6/port2, 5/NA, Bridge Port, Bridge Port Generic Model, Reserved, False, ReadWrite, Patch6\\jack4,Bridge6/port2}
    				{6, port2, , NA, Bridge7/port2, NA/NA, Bridge Port, Bridge Port Generic Model, Reserved, False, ReadWrite, Patch6\\jack5,Bridge7/port2}}
    			
  • reservations
  • 
    				{{ResourceIndex, ResourceName, ReservationId, ReservationName, Owner, StartTime, EndTime, Shared}
    				{1, Bridge6, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, True}
    				{2, Bridge7, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, True}
    				{3, Bridge7/port1, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, False}
    				{4, Bridge6/port1, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, False}
    				{5, Bridge6/port2, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, False}
    				{6, Bridge7/port2, 2002cfca-50d0-43c4-8dbb-d09e0434dbe7, Topology4, admin, 14/01/2014 08:28:00, 14/01/2014 10:28:00, False}}
    			
  • usageSummary
  • 
    				{{ResourceIndex, ResourceName, NumOfReserved, NumOfShared, NumOfNotInReservation}
    				{1, Bridge6, 2, 0, 0}{2, Bridge7, 2, 0, 0}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Resources>
    				<Resource Name="Bridge6" Address="5" FullName="Bridge6" FullAddress="5" ResourceFamilyName="Bridge" ResourceModelName="Bridge Generic Model" ReservedStatus="Shared" Excluded="false" Permission="ReadWrite" FullPath="Bridge6" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge6" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="true"></Reservation>
    				</Reservations>
    				<UsageSummary ResourceFullName="Bridge6" NumOfNotInReservation="0" NumOfReserved="2" NumOfShared="0"></UsageSummary>
    				</Resource>
    				<Resource Name="Bridge7" Address="NA" FullName="Bridge7" FullAddress="NA" ResourceFamilyName="Bridge" ResourceModelName="Bridge Generic Model" ReservedStatus="Shared" Excluded="false" Permission="ReadWrite" FullPath="Bridge7" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge7" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="true"></Reservation>
    				</Reservations>
    				<UsageSummary ResourceFullName="Bridge7" NumOfNotInReservation="0" NumOfReserved="2" NumOfShared="0"></UsageSummary>
    				</Resource>
    				<Resource Name="port1" Address="u" FullName="Bridge7/port1" FullAddress="NA/u" ResourceFamilyName="Bridge Port" ResourceModelName="Bridge Port Generic Model" ReservedStatus="Reserved" Excluded="false" Permission="ReadWrite" ConnectedTo="Patch6\jack2" FullPath="Bridge7/port1" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge7/port1" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="false"></Reservation>
    				</Reservations>
    				</Resource>
    				<Resource Name="port1" Address="u" FullName="Bridge6/port1" FullAddress="5/u" ResourceFamilyName="Bridge Port" ResourceModelName="Bridge Port Generic Model" ReservedStatus="Reserved" Excluded="false" Permission="ReadWrite" ConnectedTo="Patch6\jack1" FullPath="Bridge6/port1" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge6/port1" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="false"></Reservation>
    				</Reservations>
    				</Resource>
    				<Resource Name="port2" Address="NA" FullName="Bridge6/port2" FullAddress="5/NA" ResourceFamilyName="Bridge Port" ResourceModelName="Bridge Port Generic Model" ReservedStatus="Reserved" Excluded="false" Permission="ReadWrite" ConnectedTo="Patch6\jack4" FullPath="Bridge6/port2" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge6/port2" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="false"></Reservation>
    				</Reservations>
    				</Resource>
    				<Resource Name="port2" Address="NA" FullName="Bridge7/port2" FullAddress="NA/NA" ResourceFamilyName="Bridge Port" ResourceModelName="Bridge Port Generic Model" ReservedStatus="Reserved" Excluded="false" Permission="ReadWrite" ConnectedTo="Patch6\jack5" FullPath="Bridge7/port2" >
    				<Reservations>
    				<Reservation ReservationId="2002cfca-50d0-43c4-8dbb-d09e0434dbe7" ResourceFullName="Bridge7/port2" ReservationName="Topology4" Owner="admin" StartTime="14/01/2014 08:28:00" EndTime="14/01/2014 10:28:00" Shared="false"></Reservation>
    				</Reservations>
    				</Resource>
    				</Resources>
    				</ResponseInfo>
    			

    back to TOC

    GetResourceCommandsRetrieve resource driver commands.

    Retrieves driver commands and parameters for a specified resource.

    Syntax

    GetResourceCommands(resourceFullPath,out commands,out parameters,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    out string[,]commands
    All commands for drivers associated with the specified resource.
    out string[,]parameters
    Parameters associated with each command.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] commands, parameters;
    				testShellAPI.GetResourceCommands("Router 1234",out commands,out parameters,out resultXml);
    			

    Output

  • commands
  • 
    				{{"Index","Name","Description","DisplayName"},
    				{"1","ExampleCommand","","Example Command"},
    				{"2","ResetDriver","","Reset Driver"}}
    			
  • parameters
  • 
    				{{"CommandIndex","Name","Description","Type","Mandatory","DefaultValue","EnumValues"},
    				{"1","userParam1","","String","False","Hello",""},
    				{"1","userParam2","","Numeric","False","42",""}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Commands>
    				<Command Name="ExampleCommand" DisplayName="Example Command" >
    				<Parameters>
    				<Parameter Name="userParam1" Type="String" Mandatory="false" DefaultValue="Hello"/>
    				<Parameter Name="userParam2" Type="Numeric" Mandatory="false" DefaultValue="42"/>
    				</Parameters>
    				</Command>
    				<Command Name="ResetDriver" DisplayName="Reset Driver" >
    				<Parameters/>
    				</Command>
    				</Commands>
    				</ResponseInfo>
    			

    back to TOC

    GetServiceCommandsRetrieve service driver commands.

    Retrieves driver commands and parameters for a specified service.

    Syntax

    GetServiceCommands(serviceName,out commands,out parameters,out resultXml);

    Parameters

    TypeNameDescription
    stringserviceName
    Specify the service name.
    out string[,]commands
    All commands for drivers associated with the specified service.
    out string[,]parameters
    Parameters associated with each command.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] commands, parameters;
    				testShellAPI.GetServiceCommands("VLAN",out commands,out parameters,out resultXml);
    			

    Output

  • commands
  • 
    				{{"Index","Name","Description","DisplayName"},
    				{"1","ExampleCommand","","Example Command"},
    				{"2","ResetDriver","","Reset Driver"}}
    			
  • parameters
  • 
    				{{"CommandIndex","Name","Description","Type","Mandatory","DefaultValue","EnumValues"},
    				{"1","userParam1","","String","False","Hello",""},
    				{"1","userParam2","","Numeric","False","42",""}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Commands>
    				<Command Name="ExampleCommand" DisplayName="Example Command" >
    				<Parameters>
    				<Parameter Name="userParam1" Type="String" Mandatory="false" DefaultValue="Hello"/>
    				<Parameter Name="userParam2" Type="Numeric" Mandatory="false" DefaultValue="42"/>
    				</Parameters>
    				</Command>
    				<Command Name="ResetDriver" DisplayName="Reset Driver" >
    				<Parameters/>
    				</Command>
    				</Commands>
    				</ResponseInfo>
    			

    back to TOC

    GetResourceConnectedCommandsRetrieve resource driver commands.

    Gets commands which are added to the resource from connected resources such as power or virtualization.

    Syntax

    GetResourceConnectedCommands(resourceFullPath,out commands,out parameters,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    out string[,]commands
    All commands for drivers associated with the specified resource.
    out string[,]parameters
    Parameters associated with each command.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] commands, parameters;
    				testShellAPI.GetResourceConnectedCommands("Router 1234",out commands,out parameters,out resultXml);
    			

    Output

  • commands
  • 
    				{{"Index","Name","Tag","Description","DisplayName"},
    				{"1","ExampleCommand", "virtualization", "","Example Command"},
    				{"2","PowerOn","power","","Power On"}}
    			
  • parameters
  • 
    				{{"CommandIndex","Name","Description","Type","Mandatory","DefaultValue","EnumValues"},
    				{"1","userParam1","","String","False","Hello",""},
    				{"1","userParam2","","Numeric","False","42",""}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Commands>
    				<Command Name="SpinUp" Tag="virtualization" DisplayName="Example virtualiztion command" >
    				<Parameters>
    				<Parameter Name="userParam1" Type="String" Mandatory="false" DefaultValue="Hello"/>
    				<Parameter Name="userParam2" Type="Numeric" Mandatory="false" DefaultValue="42"/>
    				</Parameters>
    				</Command>
    				<Command Name="PowerOn" Tag="power" DisplayName="Example power command" >
    				<Parameters/>
    				</Command>
    				</Commands>
    				</ResponseInfo>
    			

    back to TOC

    GetResourceDetailsRetrieve the resource parameters and attributes.

    Retrieves resource descriptions for the specified resource, and a matrix of all its associated attributes and attribute values.

    Syntax

    GetResourceDetails(resourceFullPath, showAllDomains,out resource,out attributes,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    YesNoOptionsshowAllDomains
    Show all domains associated with the logged in user.
    out string[,]resource
    Details associated with the specified resource.
    out string[,]attributes
    Attributes and attribute values for the specified resource.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] resource;
    				attributes[,] attributes;
    				string resultXml;
    				testShellAPI.GetResourceDetails("Lab Routers/Router 1234", false, out resource, out attributes, out resultXml);
    			

    Output

  • resource
  • 
    				{{"Index","ParentIndex","Name","Address","FullAddress","RootAddress","ResourceFamilyName","ResourceModelName","FolderFullPath","Locked","LockInfo_ReservationName","LockInfo_Username","LockInfo_MachineName","LockInfo_Created","Excluded", "Permissions"},
    				{"1","-1","Router 1234","192.168.1.200","192.168.1.200","192.168.1.200","Generic Chassis","Generic Chassis Model","Lab Routers","False","","","","","False", "ReadOnly"},
    				{"2","1","Router 1234/Port 1","1","192.168.1.200/1","192.168.1.200","Generic Port","Generic Port Model","Lab Routers","False","","","","","False","ReadOnly"}}
    			
  • attributes
  • 
    				{{"ResourceIndex","ResourceName","Name","Value","Type"},
    				{"1","Router 1234","SW_Version","","String"}}
    			
  • resultXml
  • 
    				<ResponseInfo Name="Router 1234" DriverName="Router Driver" FolderFullPath="Lab Routers" Address="192.168.1.200" FullAddress="192.168.1.200" RootAddress="192.168.1.200" ResourceFamilyName="Generic Chassis" ResourceModelName="Generic Chassis Model" Locked="false" Excluded="false" Description="a generic router" Permissions="ReadOnly"  ResourceLiveStatusName="name1" ResourceLiveStatusDescription="description1">
    				<ResourceAttributes>
    				<ResourceAttribute Name="SW_Version" Value="" Type="String"></ResourceAttribute>
    				</ResourceAttributes>
    				<Domains></Domains>
    				<ChildResources>
    				<ResourceInfo Name="Router 1234/Port 1" FolderFullPath="Lab Routers" Address="1" FullAddress="192.168.1.200/1" RootAddress="192.168.1.200" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Locked="false" Excluded="false" Description="a generic router port" Permissions="ReadOnly">
    				<ResourceAttributes></ResourceAttributes>
    				<Domains></Domains>
    				<LockInfo></LockInfo>
    				</ResourceInfo>
    				</ChildResources>
    				<LockInfo></LockInfo>
    				<CreatedInReservation></CreatedInReservation>
    				<CreatedByUser></CreatedByUser>
    				<CreatedInDomain></CreatedInDomain>
    				</ResponseInfo>
    			

    back to TOC

    GetResourceListRetrieve a list of resources for a specified path.

    Retrieves resources and resource values for the specified folder path.

    Syntax

    GetResourceList(folderFullPath,out resources,out resultXml);

    Parameters

    TypeNameDescription
    stringfolderFullPath
    Specify the full folder name. Include the full path from the root to a specific folder, separated by slashes. For example: ResourceFamilyFolder/ResourceModelFolder.
    out string[,]resources
    Resources and resource values for the specified path.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] resources;
    				string resultXml;
    				testShellAPI.GetResourceList("Lab Routers", out resources, out resultXml);
    			

    Output

  • resources
  • 
    				{{"Name","Address","FullAddress","RootAddress","ResourceFamilyName","ResourceModelName","FolderFullPath","Locked","LockInfo_ReservationName","LockInfo_Username","LockInfo_MachineName","LockInfo_Created","Excluded"},
    				{Router 1234","192.168.1.200","192.168.1.200","192.168.1.200","Generic Chassis","Generic Chassis Model","Lab Routers","False","","","","","False"},
    				{Router 4321","192.168.1.201","192.168.1.201","192.168.1.201","Generic Resource","Generic Resource Model","Lab Routers","False","","","","","False"}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Resources>
    				<Resource Name="Router 1234" FolderFullPath="Lab Routers" Address="192.168.1.200" FullAddress="192.168.1.200" RootAddress="192.168.1.200" ResourceFamilyName="Generic Chassis" ResourceModelName="Generic Chassis Model" Locked="false" Excluded="false">
    				<LockInfo/>
    				</Resource>
    				<Resource Name="Router 4321" FolderFullPath="Lab Routers" Address="192.168.1.201" FullAddress="192.168.1.201" RootAddress="192.168.1.201" ResourceFamilyName="Generic Resource" ResourceModelName="Generic Resource Model" Locked="false" Excluded="false">
    				<LockInfo/>
    				</Resource>
    				</Resources>
    				</ResponseInfo>
    			

    back to TOC

    GetResourceLiveStatusGets the live status of a resource.

    Gets the live status of the resource.

    Syntax

    GetResourceLiveStatus(resourceFullPath,out liveStatusName,out additionalInfo,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA.
    out stringliveStatusName
    Resource live status name
    out stringadditionalInfo
    Resource live status additional info
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.GetResourceLiveStatus("myResourceName", out liveStatusName , out additionalInfo , out resultXml );
    			

    Output

  • liveStatusName
  • 
    				Online
    			
  • additionalInfo
  • 
    				Resource was responding to pings at 12/12/2013 10:35 AM
    			

    back to TOC

    GetReservationsLiveStatusGets the live status the reservations.

    Gets the live status of the reservations.

    Syntax

    GetReservationsLiveStatus(reservationsId,out statusesArray);

    Parameters

    TypeNameDescription
    string[]reservationsId
    Specifies a string array that represents reservation unique identifiers.
    out string[,]statusesArray
    Returns an array with reservation's live status.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.GetReservationsLiveStatus("a2f1b35e-3deb-42ee-b70d-78189dd10d56", out statusesArray , out resultXml );
    			

    Output

  • statusesArray
  • 
    				{{"a2f1b35e-3deb-42ee-b70d-78189dd10d56","Pass","Description"}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<ReservationLiveStatuses>
    				<ReservationLiveStatus ReservationId="a2f1b35e-3deb-42ee-b70d-78189dd10d56" ReservationLiveStatusName="Pass" ReservationLiveStatusDescription></ReservationLiveStatus>
    				</ReservationLiveStatuses>
    				</ResponseInfo>
    			

    back to TOC

    GetResourceMappingsRetrieve current mappings for specified resources.

    Retrieves mappings for a list of one or more resources.

    Syntax

    GetResourceMappings(resources,out mappings,out resultXml);

    Parameters

    TypeNameDescription
    string[]resources
    Specify a list of resources.
    out string[,]mappings
    All mappings associated with the listed resources.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.GetResourceMappings(new string[]{"L1 Switch 1234/Blade 1/Port 2"}, out mappings, out resultXml);
    			

    Output

  • mappings
  • 
    				{{"Source","Target","RouteType"},
    				{"L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 2","uni"}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Mapping Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 2" RouteType="uni"/>
    				</ResponseInfo>
    			

    back to TOC

    GetRouteSegmentsRetrieves all the ports on the route.

    Retrieves all the ports on the route from the selected endpoint to the target endpoint.

    Syntax

    GetRouteSegments(resource,out segments,out resultXml);

    Parameters

    TypeNameDescription
    stringresource
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    out string[,]segments
    The segments details for the specified route.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string[,] segments;
    				testShellAPI.GetRouteSegments("Router 1234/Port 1",out segments,out resultXml);
    			

    Output

  • segments
  • {{"Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 1","GenericResource 1234/Port 1"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 1"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 1" Target="GenericResource 1234/Port 1"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    GetScheduledReservationsRetrieve scheduled reservations for a specified time range.

    Retrieves all reservations scheduled between the specified start and end times.

    Syntax

    GetScheduledReservations(fromTime,untilTime,out reservations,out permittedUsers,out resultXml);

    Parameters

    TypeNameDescription
    DateTimefromTime
    Specify from which time and date to search.
    DateTimeuntilTime
    Specify until which time and date to search.
    stringownerName
    Specify reservation owner name
    out string[,]reservations
    Scheduled reservations for the provided time range. Reservations will be listed for the specified owner, or all current reservations (if no owner is specified).
    out string[,]permittedUsers
    Lists users with [active | full] access to the specified reservation.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] reservations;
    				string [,] permittedUsers;
    				string resultXml;
    				testShellAPI.GetScheduledReservations(new DateTime(2015, 1, 1, 8, 0, 0), new DateTime(2015, 1, 1, 12, 0, 0), out reservations, out resultXml);
    			

    Output

  • reservations
  • 
    				{{"Id","Name","Description","Start","End","Owner","Booked","Status","RecurrenceType","Topologies","ActualEndTime","CreateDate","ModificationDate","Provisioning Status","DomainName","ReservationsLiveStatus","ReservationsLiveStatusDescription"},
    				{af626b88-458b-4e7a-9054-c03d8cffa260","test reservation","","1/1/2015 10:00:00 AM","1/1/2015 12:00:00 PM","admin","True","Pending","None","","","6/20/2012 10:40:47 AM","6/20/2012 10:45:16 AM","Pending","Global","Pass","Reservation"}}
    			
  • permittedUsers
  • 
    				{{ReservationId, UserName}
    				{af626b88-458b-4e7a-9054-c03d8cffa260, admin}
    				{af626b88-458b-4e7a-9054-c03d8cffa260, user1}
    				{af626b88-458b-4e7a-9054-c03d8cffa260, user2}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Reservations>
    				<Reservation Id="af626b88-458b-4e7a-9054-c03d8cffa260" Name="test reservation" StartTime="2015-01-01T10:00:00" EndTime="2015-01-01T12:00:00" RecurrenceType="None" Owner="admin" Booked="true" Status="Pending" ProvisioningStatus="Ready" ActualEndTime="" CreateDate="2012-06-20T10:40:47" ModificationDate="2012-06-20T10:45:16" DomainName="Global"  ReservationLiveStatusName="Pass" ReservationLiveStatusDescription="Reservation" >
    				<Topologies/>
    				</Reservation>
    				</Reservations>
    				</ResponseInfo>
    			

    back to TOC

    GetServerDateAndTimeRetrieve the server's date and time.

    Retrieves the server’s UTC date and time.

    Syntax

    GetServerDateAndTime(out serverDateTime,out resultXml);

    Parameters

    TypeNameDescription
    out DateTimeserverDateTime
    The server’s UTC date and time.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				DateTime serverDateTime;
    				string resultXml;
    				testShellAPI.GetServerDateAndTime(out serverDateTime,out resultXml);
    			

    Output

  • serverDateTime
  • 06/21/2012 10:52:43
  • resultXml
  • <ResponseInfo ServerDateTime="2012-06-21T10:52:43.4464527Z" ServerDateTimeString="06/21/2012 10:52"/>

    back to TOC

    GetTopologyCommandsRetrieve available topology commands in a reservation.

    [Deprecated] Retrieves driver commands and parameters for a specified reservation.

    Syntax

    GetTopologyCommands(reservationId,out commands,out parameters,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out string[,]commands
    All commands for driver associated with a topology in the specified reservation.
    out string[,]parameters
    Parameters associated with each command.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] commands, parameters;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.GetTopologyCommands(reservationId,out commands,out parameters,out resultXml);
    			

    Output

  • commands
  • 
    				{{"Index","Name","Description"},
    				{"1","ExampleCommand",""},
    				{"2","Setup",""}}
    			
  • parameters
  • 
    				{{"CommandIndex","Name","Description","Type","Mandatory","DefaultValue","EnumValues"},
    				{"1","userParam1","","String","False","Hello",""},
    				{"1","userParam2","","Numeric","False","42",""}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Commands>
    				<Command Name="ExampleCommand">
    				<Parameters>
    				<Parameter Name="userParam1" Type="String" Mandatory="false" DefaultValue="Hello"/>
    				<Parameter Name="userParam2" Type="Numeric" Mandatory="false" DefaultValue="42"/>
    				</Parameters>
    				</Command>
    				<Command Name="Setup">
    				<Parameters/>
    				</Command>
    				</Commands>
    				</ResponseInfo>
    			

    back to TOC

    GetEnvironmentCommandsRetrieve available environment commands in a reservation.

    Retrieves driver commands and parameters for a specified reservation.

    Syntax

    GetEnvironmentCommands(reservationId,out commands,out parameters,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out string[,]commands
    All commands for driver associated with a topology in the specified reservation.
    out string[,]parameters
    Parameters associated with each command.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] commands, parameters;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.GetEnvironmentCommands(reservationId,out commands,out parameters,out resultXml);
    			

    Output

  • commands
  • 
    				{{"Index","Name","Description"},
    				{"1","ExampleCommand",""},
    				{"2","Setup",""}}
    			
  • parameters
  • 
    				{{"CommandIndex","Name","Description","Type","Mandatory","DefaultValue","EnumValues"},
    				{"1","userParam1","","String","False","Hello",""},
    				{"1","userParam2","","Numeric","False","42",""}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Commands>
    				<Command Name="ExampleCommand">
    				<Parameters>
    				<Parameter Name="userParam1" Type="String" Mandatory="false" DefaultValue="Hello"/>
    				<Parameter Name="userParam2" Type="Numeric" Mandatory="false" DefaultValue="42"/>
    				</Parameters>
    				</Command>
    				<Command Name="Setup">
    				<Parameters/>
    				</Command>
    				</Commands>
    				</ResponseInfo>
    			

    back to TOC

    GetTopologyDetailsRetrieve the topology parameters and attributes.

    Retrieves all resources and attributes associated with the specified topology.

    Syntax

    GetTopologyDetails(topologyFullPath,out owner,out instructions,out resources,out attributes,out abstractResources,out abstractResourcesAttributes,out abstractResourcesRequiredAttributes,out routes,out driver,out globalInputs,out requirementsInputs,out additionalInfoInputs,out connectors,out connectorAttributes,out alias,out type,out state,out parentTopology,out services,out serviceAttributes,out apps, out maxDuration, out resultXml);

    Parameters

    TypeNameDescription
    stringtopologyFullPath
    Specify topology (name or full path). For full path, specify the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    out stringowner
    Owner of the topology.
    out stringinstructions
    Topology instructions.
    out string[,]resources
    Resources and resource values associated with the specified topology.
    out string[,]attributes
    Attributes and attribute values for resources associated with the specified topology.
    out string[,]abstractResources
    Abstract resources and their associated values for the specified topology.
    out string[,]abstractResourcesAttributes
    Attributes and attribute values for all abstract resources associated with the specified topology.
    out string[,]abstractResourcesRequiredAttributes
    Required attributes and attribute values for all abstract resources associated with the specified topology (multiple possible values for a single attribute are displayed in different rows).
    out string[,]routes
    Routes and route endpoints associated with the specified topology.
    out stringDriver
    The name of the driver associated with this topology.
    out string[,]globalInputs
    Global inputs associated with the specified topology.
    out string[,]requirementsInputs
    Requirements inputs associated with the specified topology.
    out string[,]additionalInfoInputs
    Additional info inputs associated with the specified topology.
    out string[,]connectors
    Connectors associated with the specified topology.
    out string[,]ConnectorAttributes
    Visual connectors attributes associated with a specified connector.
    out stringtype
    The Type of the topology.
    out stringstate
    The State of the topology.
    out string[,]parentTopology
    The Topology from which this topology was created.
    out string[,]permittedEditors
    List of permitted editors names.
    out string[,]services
    Matrix of service instances.
    out string[,]serviceAttributes
    Matrix of attributes of the services.
    out string[,]apps
    Matrix of apps.
    out stringmaxDuration
    The maximun amount of time this topology can be reserved.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetTopologyDetails("Temp Automation Resources/TP1");
    			

    Output

  • Owner
  • {{"Owner"}}
  • Instructions
  • {{"Instructions"}}
  • resources
  • 
    				{{"Index","Name","Address","FullAddress","RootAddress","ResourceFamilyName","ResourceModelName","FolderFullPath","Locked","LockInfo_ReservationName","LockInfo_Username","LockInfo_MachineName","LockInfo_Created","Excluded","Alias","WillBeLocked"},
    				{"1","Router 1234","192.168.1.201","192.168.1.201","192.168.1.201","Generic Chassis","Generic Chassis Model","Lab Routers","False","","","","","False","Router 1234","False"},
    				{"2","GenericResource 1234/ConsolePort 21","21","192.168.1.20/21","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","False","","","","","False","ConsolePort 21","True"},
    				{"3","GenericResource 1234/Port 2","2","192.168.1.20/2","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","False","","","","","False","Port 2","True"},
    				{"4","GenericResource 1234/PowerPort 12","12","192.168.1.20/12","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","False","","","","","False","PowerPort 12","True"},
    				{"5","Router 1234/Port 1","1","192.168.1.201/1","192.168.1.201","Generic Port","Generic Port Model","Lab Routers","False","","","","","False","Port 1","True"},
    				{"6","GenericResource 1234/PowerPort 11","11","192.168.1.20/11","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","False","","","","","False","PowerPort 11","True"},
    				{"7","GenericResource 1234","192.168.1.20","192.168.1.20","192.168.1.20","Generic Resource","Generic Resource Model","Temp Automation Resources","False","","","","","False","GenericResource 1234","True"},
    				{"8","GenericResource 1234/Port 1","1","192.168.1.20/1","192.168.1.20","Generic Port","Generic Port Model","Temp Automation Resources","False","","","","","False","Port 1","True"}}
    			
  • attributes
  • 
    				{{"ResourceIndex","ResourceName","Name","Value","Type"},
    				{"1","Router 1234","SW_Version","","String"}}
    			
  • abstractResources
  • {{"Index","ResourceFamilyName","ResourceModelName","Alias","WillBeLocked","Valid","Quantity"}}
  • abstractResourcesAttributes
  • {{"AbstractResourceIndex","AbstractResourceAlias","AttributeName","AttributeValue","AttributeType"}}
  • abstractResourcesRequiredAttributes
  • {{"AbstractResourceIndex","AbstractResourceAlias","AttributeName","AttributeValue","AttributeType"}}
  • routes
  • 
    				{{"Index","Source","Target","RouteType","Alias","Shared"},
    				{"1","GenericResource 1234/Port 1","Router 1234/Port 1","bi","","true"},
    				{"2","Router 1234/Port 1","GenericResource 1234/Port 2","uni","","true"}}
    			
  • Driver
  • {{"ExampleTopologyDriver"}}
  • globalInputs
  • 
    				{{"Param Name", "Default Value", "Possible Values", "Description"},
    				{"Some global input", "", "", ""}}
    			
  • requirementsInputs
  • 
    				{{"Resource Name", "Param Name", "Default Value", "Possible Values", "Input Type", "Description"},
    				{"test*", "Model", "", "", "Models", ""},
    				{"test*", "Speed", "", "10 Mbps
    				100 Mbps
    				1 Gbps
    				10 Gbps", "Attributes", ""}}
    			
  • additionalInfoInputs
  • 
    				{{"Resource Name", "Param Name", "Default Value", "Possible Values", "Description"},
    				{"test*", "Test", "", ""}}
    			
  • connectors
  • 
    				{{"index","Source","Target","ResourceMappingType","Alias"},
    				{"1","b6/p7","b7/p5","bi","vc1"}}
    			
  • connectorAttributes
  • 
    				{{"ConnectorIndex","Name","Value"},
    				{"1","Duplex", "Half"}}
    			
  • Type
  • 
    				"Build"
    			
  • State
  • 
    				"Ready"
    			
  • MaxDuration
  • 
    				"02:00:00"
    			
  • ParentTopology
  • 
    				{{"Index","Name","Type","State"},
    				{"0","Topo1234","Build","Pending"}}
    			
  • PermittedEditors
  • 
    				{"John Doe", "Smith Wilson", "Archie Goldman"}
    			
  • services
  • 
    				{{"Index","ServiceName","Alias"},
    				{"1","Sql1","Sql64"}}
    			
  • serviceAttributes
  • 
    				{{"ServiceInstanceIndex","Name","Value"},
    				{"1","Duplex","Half"}}
    			
  • apps
  • 
    				{{"Name","LogicalResourceFamily","LogicalResourceModel"},
    				{"App","General App Family","General App Model"}}
    			
  • resultXml
  • 
    				<ResponseInfo Name="TP1">
    				<Resources>
    				<ResourceInfo Name="Router 1234" FolderFullPath="Lab Routers" Address="192.168.1.201" FullAddress="192.168.1.201" RootAddress="192.168.1.201" ResourceFamilyName="Generic Chassis" ResourceModelName="Generic Chassis Model" Alias="Router 1234" Locked="false" Excluded="false" WillBeLocked="false">
    				<ResourceAttributes>
    				<ResourceAttribute Name="SW_Version" Value="" Type="String"/>
    				</ResourceAttributes>
    				<LockInfo/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/ConsolePort 21" FolderFullPath="Temp Automation Resources" Address="21" FullAddress="192.168.1.20/21" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="ConsolePort 21" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/ConsoleServer 1234/ConsolePort 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/Port 2" FolderFullPath="Temp Automation Resources" Address="2" FullAddress="192.168.1.20/2" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 2" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 2"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/PowerPort 12" FolderFullPath="Temp Automation Resources" Address="12" FullAddress="192.168.1.20/12" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="PowerPort 12" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/SmartPower2L 1234/PowerPort 2"/>
    				</ResourceInfo>
    				<ResourceInfo Name="Router 1234/Port 1" FolderFullPath="Lab Routers" Address="1" FullAddress="192.168.1.201/1" RootAddress="192.168.1.201" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 1" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/PowerPort 11" FolderFullPath="Temp Automation Resources" Address="11" FullAddress="192.168.1.20/11" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="PowerPort 11" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/SmartPower2L 1234/PowerPort 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234" FolderFullPath="Temp Automation Resources" Address="192.168.1.20" FullAddress="192.168.1.20" RootAddress="192.168.1.20" ResourceFamilyName="Generic Resource" ResourceModelName="Generic Resource Model" Alias="GenericResource 1234" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/Port 1" FolderFullPath="Temp Automation Resources" Address="1" FullAddress="192.168.1.20/1" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 1" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 1"/>
    				</ResourceInfo>
    				</Resources>
    				<AbstractResources/>
    				<Routes>
    				<Route Source="GenericResource 1234/Port 1" Target="Router 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="GenericResource 1234/Port 1" Target="Router 1234/Port 1"/>
    				</Segments>
    				</Route>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 2" RouteType="uni" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="GenericResource 1234/Port 2"/>
    				</Segments>
    				</Route>
    				</Routes>
    				<Instructions>
    				Topology instructions.
    				</Instructions>
    				<Driver>
    				ExampleTopologyDriver
    				</Driver>
    				<GlobalInputs ParamName="Some global input"></GlobalInputs>
    				<RequirementsInputs ParamName="Model" ResourceName="test*" InputType="Models">
    				<PossibleValues>Test Model</PossibleValues>
    				</RequirementsInputs>
    				<RequirementsInputs ParamName="Speed" ResourceName="test*" InputType="Attributes">
    				<PossibleValues>10 Mbps</PossibleValues>
    				<PossibleValues>100 Mbps</PossibleValues>
    				<PossibleValues>1 Gbps</PossibleValues>
    				<PossibleValues>10 Gbps</PossibleValues>
    				</<RequirementsInputs>
    				<AdditionalInfoInputs ParamName="Test" ResourceName="test*"></AdditionalInfoInputs>
    				<Connectors>
    				<Connector Alias="connector1" Type="Default" ResourceMappingType="bi" Source="b6/p7" Target="b7/p5">
    				<Attributes>
    				<Attribute Name="Numeric" Value="2">
    				</Attributes>
    				</Connector>
    				<Connector Alias="vc444" Type="Default" ResourceMappingType="bi" Source="b6/p6" Target="b7/p4">
    				<Attributes>
    				<Attribute Name="Protocol" Value="Transparent">
    				</Attributes>
    				</Connector>
    				</Connectors>
    				<ParentTopology Name="Template01">
    				<Type>Build</Type>
    				<State>Ready</State>
    				</ParentTopology>
    				<PermittedEditors>
    				<string>John Doe<string>
    				<string>Smith Wilson<string>
    				<string>Archie Goldman<string>
    				</PermittedEditors>
    				<Services>
    				<Service ServiceName="service1 Instance" Alias="Sql Server">
    				<Attributes>
    				<Attribute Name="Numeric" Value="2">
    				</Attributes>
    				</Service>
    				</Services>
    				<Apps>
    				<App Name="App2222">
    				<LogicalResource Family="Generic App Family" Model="Generic App Model" Description="">
    				<Attributes>
    				<Attribute Name="Access Mode" Value="565"></Attribute>
    				</Attributes>
    				</LogicalResource>
    				<DeploymentPaths>
    				<DeploymentPath IsDefault="true">
    				<DeploymentService Name="vCenter VM From Template" Model="vCenter VM From Template" Driver="Deploy From Template Driver">
    				<Attributes>
    				<Attribute Name="Access Mode" Value=""></Attribute>
    				<Attribute Name="vCenter Name" Value="VMWare vCenter"></Attribute>
    				<Attribute Name="vCenter Template" Value=""></Attribute>
    				</Attributes>
    				</DeploymentService>
    				</DeploymentPath>
    				</DeploymentPaths>
    				</App>
    				</App>
    				</Apps>
    				<MaxDuration>02:00:00</MaxDuration>
    				</ResponseInfo>
    			

    back to TOC

    GetResourcesLabelsInTopologyGet resources associated with labels in topology.

    Retrieves all resources associated with labels in the specified topology.

    Syntax

    GetResourcesLabelsInTopology(topologyName, out resultXml);

    Parameters

    TypeNameDescription
    stringtopologyName
    Specify the topology name.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.GetResourcesLabelsInTopology(topo1, out resultXml);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo xsi:type="GetResourcesLabelsInTopologyResponseInfo">
    				<Resources>			
    				<Resource Name="res" Type="Resource" LabelName="label1">
    				</Resource>
    				<Resources>			
    				<Resource Name="res2" Type="Abstract Resource" LabelName="label2">
    				</Resource>
    				<Resources>			
    				<Resource Name="service1" Type="Service" LabelName="label3">
    				</Resource>
    				<Resources>			
    				<Resource Name="app1" Type="App" LabelName="label4">
    				</Resource>
    				</Resources>
    				</ResponseInfo>
    			

    back to TOC

    GetTopologiesByCategoryRetrieves the full path of all topologies.

    Retrives full topology path for each topology that contains given category name (and value if entered).

    Syntax

    GetTopologiesByCategory(categoryName, categoryValue, out categoriesFullPath, out resultXml);

    Parameters

    TypeNameDescription
    stringcategoryName
    Specify the category's name, If category name is not provided will return all topologies in domain.
    stringcategoryValue
    Specify the category's value/sub category
    out stringtopologiesFullPath
    Specify full topology path for each topology that contains given category
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetTopologiesByCategory("lookUpCategory","bonjour");
    			

    Output

  • topologiesFullPath
  • {{"dir1/myTopology","Root\otherTopology"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Topologies>
    				<FullPath>
    				Root\otherTopology
    				</FullPath>
    				<FullPath>
    				dir1/myTopology
    				</FullPath>
    				</Topologies>
    				</ResponseInfo>
    			

    back to TOC

    GetTopologyCategoriesRetrieves all topology categories.

    Retrieves all root categories from 'Environment' catalog.

    Syntax

    GetTopologyCategories(out categories, out resultXml);

    Parameters

    TypeNameDescription
    out string[]categories
    List of categories.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetTopologyCategories();
    			

    Output

  • categories
  • {{"category1","otherCategory","lookUpCategory"}}
  • resultXml
  • 
    				<ResponseInfo>
    				<Categories>
    				<Name>
    				category1
    				</Name>
    				<Name>
    				otherCategory
    				</Name>
    				<Name>
    				lookUpCategory
    				</Name>
    				</Name>
    				</ResponseInfo>
    			

    back to TOC

    GetCategoriesRetrieves all the logged in user's root categories and sub categories

    Retrieves all the logged in user's root categories and sub categories for Topologies and Services from the 'Environment' catalog.

    Syntax

    GetCategories(type, out resultXml);

    Parameters

    TypeNameDescription
    stringtype
    Specify the categoriy type: Services, Environment or empty for both.
    out stringresultXml
    Specify the variable for the XML output. If a variable is not provided, the results will be sent to stdout.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetCategories("");
    			

    Output

  • resultXml
  • 
    				<ResponseInfo xsi:type="CategoryListBriefInfo">
    				<Categories>
    				<Category Name="root1/bpc1" Description="blueprint category" Type="blueprint"/>
    				<Category Name="root2/svcc1" Description="service category" Type="service"/>
    				</Categories>
    				</ResponseInfo>
    			

    back to TOC

    GetUserDetailsRetrieve a user's settings.

    Retrieves the specified user's configuration settings and associated domains.

    Syntax

    GetUserDetails(username,out userDetails,out resultXml);

    Parameters

    TypeNameDescription
    stringusername
    Specify the name of the user.
    out string[,]userDetails
    User settings for the specified user.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetUserDetails("User1234");
    			

    Output

  • userDetails
  • {{"Name","Email","IsAdmin","IsActive","IsDomainAdmin","DomainName},{"User1234","user1234@work.com","True","True","False",""}}
  • resultXml
  • 
    				<ResponseInfo Name="User1234" IsAdmin="false" IsActive="true" IsDomainAdmin="false" Email="user1234@work.com">
    				<Groups>
    				<Group Name="Everyone">
    				<TestShellDomains/>
    				</Group>
    				</Groups>
    				</ResponseInfo>
    			

    Exceptions

    • UserValidation
    • General

    back to TOC

    GetAbstractTemplateListRetrieve a list of abstract templates.

    Retrieve a list of abstract templates.

    Syntax

    GetAbstractTemplateList(out abstractTemplates,out resultXml);

    Parameters

    TypeNameDescription
    out string[,]abstractTemplates
    Abstract templates details.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] abstractTemplates;
    				string resultXml;
    				testShellAPI.GetAbstractTemplateList(out abstractTemplates, out resultXml);
    			

    back to TOC

    GetServicesRetrieve a list of services and their attributes.

    Retrieve a list of services and their attributes.

    Syntax

    GetServices(categoryName,serviceName,out services,out serviceAttributes,out resultXml);

    Parameters

    TypeNameDescription
    stringcategoryName
    The name of the category of the services you want to receive.
    stringserviceName
    The name of the service you want to receive.
    out string[,]services
    Matrix of services.
    out string[,]serviceAttributes
    Matrix of attributes of the services.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] services;
    				string[,] serviceAttributes;
    				string resultXml;
    				testShellAPI.GetServices("CategoryName", "ServiceName", out services, out serviceAttributes, out resultXml);
    			

    back to TOC

    GetReservationServicesPositionsGet service positions in a reservation.

    Retrieves the x/y coordinates for all services in the reservation's diagram.

    Syntax

    GetReservationServicesPositions(reservationId,out layout,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    out string[,]layout
    All the services and their positions in the diagram.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string[,] layout;
    				string resultXml;
    				testShellAPI.GetReservationServicesPositions(reservationId, out layout, out resultXml);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo>
    				<layout/>
    				</ResponseInfo>
    			

    back to TOC

    IncludeResourceInclude a resource.

    Includes a specified resource.

    Syntax

    IncludeResource(resourceFullPath);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.IncludeResource("L1 Switch 1234");
    			

    back to TOC

    IncludeResourcesIncludes the specified resources.

    Includes the specified resources.

    Syntax

    IncludeResources(resourcesFullPath);

    Parameters

    TypeNameDescription
    string[]resourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.IncludeResources(new[] {"L1 Switch 1234"});
    			

    back to TOC

    LockResourceLock a resource.

    Locks a specified resource.

    Syntax

    LockResource(reservationId,resourceFullPath);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.LockResource(reservationId, "GenericResource 1234/Port 1");
    			

    back to TOC

    LockResourcesLock multiple resources.

    Locks multiple resources.

    Syntax

    LockResources(reservationId,resourcesFullPath);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]resourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.LockResources(reservationId,new string[]{"GenericResource 1234/Port 1" "GenericResource 1234/Port 2"});
    			

    back to TOC

    LogoffLogoff from resource manager service.

    Logs out the current user.

    Syntax

    Logoff();

    Parameters

    TypeNameDescription

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.Logoff();
    			

    back to TOC

    LogonLog in to the TestShell service.

    Logs in a user. If no user is specified, this method logs in the current user. If no domain is specified, this method logs the user in to the global (default) domain.

    Syntax

    Logon(username,password,domainName);

    Parameters

    TypeNameDescription
    stringusername
    Username to logon with.
    stringpassword
    Specify the user’s login password.
    stringdomainName
    Specify the name of the domain. If no domain is specified, it logs the user in to the global (default) domain.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.Logon("admin","admin","Global");
    			

    back to TOC

    LogoutTNSessionLogout from a console port TN session.

    Logs the user out from a console port TN session.

    Syntax

    LogoutTNSession(reservationId,resourceFullPath,consolePortsFullPath,baudRate,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    string[]consolePortsFullPath
    Specify a list of console ports according to their location in the Resource Explorer. Include the full path from the root to each console port, separated by slashes. For example: Console/Ports/PortName.
    BaudRatebaudRate
    Specify the baud rate to apply to the ports.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.LogoutTNSession(reservationId,"GenericResource 1234",new string[]{"GenericResource 1234/ConsolePort 21"},BaudRate.Baud9600,out output,out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output=""/>

    back to TOC

    MapPortsMap ports on a L1 switch.

    Maps a pair of ports on a physical (L1) switch.

    Syntax

    MapPorts(sourcePort,destinationPort,mappingType);

    Parameters

    TypeNameDescription
    stringsourcePort
    Specify the source port.
    stringdestinationPort
    Specify the destination port.
    MappingTypemappingType
    Specify bidirectional or unidirectional as the mapping type.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.MapPorts("L1 Switch 1234/Blade 1/Port 1","L1 Switch 1234/Blade 1/Port 3",MappingType.Bidirectional);
    			

    back to TOC

    PowerCycleResourceCycle power for resource power ports.

    Cycles the power options for resource power ports.

    Syntax

    PowerCycleResource(reservationId,resourceFullPath,powerPortsFullPath,delay,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the reservation’s unique identifier. Admin users may leave this parameter blank to perform power operations on excluded resources.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    string[]powerPortsFullPath
    Specify the list of power ports to use in this operation. Include the full path from the root resource to each power port, separated by slashes. For example: Switch20/Blade5/PowerPort1. Leave blank to perform the power operation on all of the specified resource’s power ports.
    doubledelay
    Specify the number of seconds to delay between each power cycle.
    out stringoutput
    The power cycle results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.PowerCycleResource(reservationId,"GenericResource 1234",new string[]{"GenericResource 1234/PowerPort 11"},2,out output,out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output=""/>

    back to TOC

    PowerOffResourcePower off resource power ports.

    Powers off specified power ports.

    Syntax

    PowerOffResource(reservationId,resourceFullPath,powerPortsFullPath,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the reservation’s unique identifier. Admin users may leave this parameter blank to perform power operations on excluded resources.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    string[]powerPortsFullPath
    Specify the list of power ports to use in this operation. Include the full path from the root resource to each power port, separated by slashes. For example: Switch20/Blade5/PowerPort1. Leave blank to perform the power operation on all of the specified resource’s power ports.
    out stringoutput
    The power off results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.PowerOffResource(reservationId,"GenericResource 1234",new string[]{"GenericResource 1234/PowerPort 11"},out output,out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output=""/>

    back to TOC

    PowerOnResourcePower on resource power ports.

    Powers on resource power ports.

    Syntax

    PowerOnResource(reservationId,resourceFullPath,powerPortsFullPath,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the reservation’s unique identifier. Admin users may leave this parameter blank to perform power operations on excluded resources.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    string[]powerPortsFullPath
    Specify the list of power ports to use in this operation. Include the full path from the root resource to each power port, separated by slashes. For example: Switch20/Blade5/PowerPort1. Leave blank to perform the power operation on all of the specified resource’s power ports.
    out stringoutput
    The power on results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.PowerOnResource(reservationId,"GenericResource 1234",new string[]{"GenericResource 1234/PowerPort 11"},out output,out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output=""/>

    back to TOC

    RecheckConflictsView which resources are available for a reservation.

    Updates the list of available resources for a reservation.

    Syntax

    RecheckConflicts(reservationId);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.RecheckConflicts(reservationId);
    			

    back to TOC

    ReleaseResourcesFromReservationRelease occupied testing resources.

    Releases occupied testing resources that would not otherwise be available until the end of the current reservation.

    Syntax

    ReleaseResourcesFromReservation(reservationId,resourcesFullPath);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]resourcesFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.ReleaseResourcesFromReservation(reservationId, new string[]{"GenericResource 1234","Router 1234/Port 1"});
    			

    back to TOC

    ReleaseTopologyResourcesRelease resources used in topology.

    Releases resources used in topology. A reservation will not end until all used resources are released.

    Syntax

    ReleaseTopologyResources(reservationId, topologyFullPath);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringtopologyFullPath
    Specify topology (name or full path). For full path, specify the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.ReleaseTopologyResources(reservationId, "Temp Automation Resources/TP1");
    			

    back to TOC

    RemoveGroupsFromDomainRemove groups from a domain.

    Remove groups from a domain.

    Syntax

    RemoveGroupsFromDomain(domainName,groupNames);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    string[]groupNames
    Specify an array of one or more groups.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.RemoveGroupsFromDomain("Global", new string[] {"QA_Users"});
    			

    back to TOC

    RemovePermittedUsersFromReservationRemove permitted users from a reservation.

    Remove one or more permitted users from the specified reservation.

    Syntax

    RemovePermittedUsersFromReservation(reservationId,usernames);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]usernames
    List of permitted users to remove from the reservation.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.RemovePermittedUsersFromReservation("2d2f7cde-20g3-4bac-80d2-e8cfhecef45b",new string[]{"name1","name2"});
    			

    back to TOC

    RemoveResourcesFromDomainRemove resources from a domain.

    Remove resources from a domain.

    Syntax

    RemoveResourcesFromDomain(domainName,resourcesNames);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    string[]resourcesNames
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.RemoveResourcesFromDomain("Domain1", new string[]{"Router 1234","GenericResource 1234"});
    			

    back to TOC

    RemoveResourcesFromReservationRemove resources from a reservation.

    Unlocks and removes resources from a reservation.

    Syntax

    RemoveResourcesFromReservation(reservationId,resourcesFullPath);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]resourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    YesNoOptionsdeleteDeployedApps
    Specify false to block deletion of deployed apps when removing them from reservation - only applies to resources of that are deployed apps, when applied to other resources argument is ignored. Parameter is optional and can be left empty

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string resultXml;
    				testShellAPI.RemoveResourcesFromReservation(reservationId, new string[]{"Router 1234","GenericResource 1234"});
    			

    Output

  • resultXml
  • 
    				<ResponseInfo>
    				<Conflicts/>
    				</ResponseInfo>
    			

    back to TOC

    RemoveConnectorsFromReservationRemove connectors from a reservation.

    Removes the mapped connector between given end points.

    Syntax

    RemoveConnectorsFromReservation(reservationId,endpoints,out connectors,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[,]endpoints
    The list of removed endpoints.
    out string[,]connectors
    The list of removed connectors.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] connectors;
    				testShellAPI.RemoveConnectorsFromReservation(reservationId,new string[]{"Router 1234/Port 1","Router 1234/Port 1"},new string[]{"GenericResource 1234/Port 1","GenericResource 1234/Port 2"},out connectors,out resultXml);
    			

    Output

  • connectors
  • 
    				{{"Index","Source","Target","Direction","Alias"},
    				{"1","Router 1234/Port 1","GenericResource 1234/Port 1","bi","a connector"},
    				{"2","Router 1234/Port 1","GenericResource 1234/Port 2","uni","uni connector"}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Connectors>
    				<Connector Alias="a connector" Type="Default" ResourceMappingType="bi" Source="Router 1234/Port 1" Target="GenericResource 1234/Port 1">
    				</Connector>
    				<Connector Alias="uni connector" Type="Default" ResourceMappingType="uni" Source="Router 1234/Port 1" Target="GenericResource 1234/Port 2">
    				</Connector>
    				</Connectors>
    				</ResponseInfo>
    			

    back to TOC

    RemoveRoutesFromReservationRemove routes from a reservation.

    Disconnects a list of endpoints and removes the mapped route between them. Will only disconnect endpoints using resources reserved to the logged-in user .

    Syntax

    RemoveRoutesFromReservation(reservationId,endpoints,mappingType,out routes,out segments,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[,]endpoints
    The list of removed endpoints.
    MappingTypemappingType
    Specify bidirectional or unidirectional as the mapping type.
    out string[,]routes
    The list of removed routes.
    out string[,]segments
    The list of removed segments.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] routes,segments;
    				testShellAPI.RemoveRoutesFromReservation(reservationId,new string[]{"Router 1234/Port 1","Router 1234/Port 1"},new string[]{"GenericResource 1234/Port 1","GenericResource 1234/Port 2"},MappingType.Bidirectional,out routes,out segments,out resultXml);
    			

    Output

  • routes
  • 
    				{{"Index","Source","Target","RouteType","Alias","Shared"},
    				{"1","Router 1234/Port 1","GenericResource 1234/Port 1","bi","a route","true"},
    				{"2","Router 1234/Port 1","GenericResource 1234/Port 2","uni","uni route","true"}}
    			
  • segments
  • 
    				{{"RouteIndex","Source","Target"},
    				{"1","Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3"},
    				{"1","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 1"},
    				{"1","L1 Switch 1234/Blade 1/Port 1","GenericResource 1234/Port 1"},
    				{"2","Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3"},
    				{"2","L1 Switch 1234/Blade 1/Port 3","L1 Switch 1234/Blade 1/Port 2"},
    				{"2","L1 Switch 1234/Blade 1/Port 2","GenericResource 1234/Port 2"}}
    			
  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 1" Alias="a route" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 1"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 1" Target="GenericResource 1234/Port 1"/>
    				</Segments>
    				</Route>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 2" Alias="uni route" RouteType="uni" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 2"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 2" Target="GenericResource 1234/Port 2"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    RemoveTopologiesFromDomainRemoves a list of one or more topologies from a domain.

    Removes a list of one or more topologies from a domain.

    Syntax

    RemoveTopologiesFromDomain(domainName,topologyNames);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    string[]topologyNames
    Specify a list of topology names. Include the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.RemoveTopologiesFromDomain("Domain1", new string[] { "Topology1" });
    			

    back to TOC

    RemoveUsersFromGroupRemove users from a group.

    Removes a list of one or more users from the specified group.

    Syntax

    RemoveUsersFromGroup(usernames,groupName);

    Parameters

    TypeNameDescription
    string[]usernames
    Specify an array of one or more users.
    stringgroupName
    Specify the name of the group.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.RemoveUsersFromGroup(new string[] { "User1234", "User2345" }, "QA_Users");
    			

    back to TOC

    RemoveTopologyCategoryRemoves a category from given topology.

    Removes a category from given topology.

    Syntax

    RemoveTopologyCategory(topologyFullPath, categoryName);

    Parameters

    TypeNameDescription
    stringtopologyFullPath
    Specify the topology (name or full path), from which to remove the category. For full path, specify the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    stringcategoryName
    Specify the category's name which we want to remove.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.RemoveTopologyCategory("myDir/myTopology","lookUpCategory");
    			

    back to TOC

    MoveResourcesMove multiple resources.

    Allows to change the folder that the specified root resources belong to.

    Syntax

    MoveResources(resourcesName,targetFolder);

    Parameters

    TypeNameDescription
    string[]resourcesName
    Specify the name of the root resources to move to the new target folder.
    stringtargetFolder
    The path of the target folder.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[] resources = new string[]{"Bridge1","Bridge2"};
    				testShellAPI.MoveResources(resources, "MyBridges");
    			

    back to TOC

    RenameResourceRename a resource.

    Renames the specified resource.

    Syntax

    RenameResource(resourceFullPath,resourceName);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringresourceName
    Specify a new resource name.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.RenameResource("Router 1234","Router 4321");
    			

    back to TOC

    ResetResourceDriverReset a resource driver and cancel its commands.

    Cancel the currently executing command, remove all pending command executions and reset the driver to its initial state.

    Syntax

    ResetResourceDriver(reservationId,resourceFullPath,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.ResetResourceDriver(reservationId, "Router 1234", out output, out resultXml);
    			

    Output

  • output
  • Reset completed
  • resultXml
  • <ResponseInfo Output="Reset completed"/>

    back to TOC

    RemoveAppFromReservationRemove app resource from existing reservation.

    Remove a deployed App resource from existing reservation.

    Syntax

    RemoveAppFromReservation(reservationId,appName);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringappName
    Specify the name of the App.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId;
    				string appName;
    				testShellAPI.RemoveAppFromReservation(reservationId, appName);
    			

    back to TOC

    GetAppsDetailsInReservationRetrieves information on Apps in the reservation.

    Retrieves information on Apps in the reservation.

    Syntax

    GetAppsDetailsInReservation(reservationId,appNames,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]appNames
    Specify the name of the Apps.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId;
    				string appNames;
    				string resultXml;
    				testShellAPI.GetAppsDetailsInReservation(reservationId, appNames, out resultXml);
    			

    back to TOC

    RemoveServicesFromReservationRemove services and apps from existing reservation.

    Remove services and apps from existing reservation.

    Syntax

    RemoveServicesFromReservation(reservationId,services);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]services
    List of aliases. This list should contain the aliases for both the services and apps that should be removed.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] services;
    				testShellAPI.RemoveServicesFromReservation("b8ed1fb9-7903-40de-b5b4-f6cba31f6fa0", services);
    			

    back to TOC

    SaveReservationAsTopologyCreate a topology from an existing active reservation.

    Creates a topology from an existing reservation. Leave the folder path blank to save the topology directly under the root.

    Syntax

    SaveReservationAsTopology(reservationId,folderFullPath,topologyName,includeInactiveRoutes,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringfolderFullPath
    Full container folder path where the new topology will be saved. leaving the folder path empty will try saving the topology under the root. For example: FolderName/FolderNameA.
    stringtopologyName
    Specify the new name for the new topology.
    YesNoOptionsincludeInactiveRoutes
    Include disconnected routes in the created topology
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.SaveReservationAsTopology(reservationId,"Temp Automation Resources","TP1",YesNoOptions.Yes,out resultXml);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo Name="TP1">
    				<Resources>
    				<ResourceInfo Name="Router 1234/Port 1" FolderFullPath="Lab Routers" Address="1" FullAddress="192.168.1.201/1" RootAddress="192.168.1.201" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 1" Locked="true" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Studio" Username="admin" Created="2012-06-20T17:20:37"/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 3"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/Port 1" FolderFullPath="Temp Automation Resources" Address="1" FullAddress="192.168.1.20/1" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 1" Locked="true" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Studio" Username="admin" Created="2012-06-20T17:20:37"/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/Port 2" FolderFullPath="Temp Automation Resources" Address="2" FullAddress="192.168.1.20/2" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="Port 2" Locked="true" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo ReservationName="Immediate reservation" MachineName="PRODUCT-W7 - Tcl" Username="admin" Created="2012-06-20T17:20:37"/>
    				<Connections FullPath="Temp Automation Resources/L1 Switch 1234/Blade 1/Port 2"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/PowerPort 11" FolderFullPath="Temp Automation Resources" Address="11" FullAddress="192.168.1.20/11" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="PowerPort 11" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/SmartPower2L 1234/PowerPort 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/PowerPort 12" FolderFullPath="Temp Automation Resources" Address="12" FullAddress="192.168.1.20/12" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="PowerPort 12" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/SmartPower2L 1234/PowerPort 2"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234/ConsolePort 21" FolderFullPath="Temp Automation Resources" Address="21" FullAddress="192.168.1.20/21" RootAddress="192.168.1.20" ResourceFamilyName="Generic Port" ResourceModelName="Generic Port Model" Alias="ConsolePort 21" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				<Connections FullPath="Temp Automation Resources/ConsoleServer 1234/ConsolePort 1"/>
    				</ResourceInfo>
    				<ResourceInfo Name="GenericResource 1234" FolderFullPath="Temp Automation Resources" Address="192.168.1.20" FullAddress="192.168.1.20" RootAddress="192.168.1.20" ResourceFamilyName="Generic Resource" ResourceModelName="Generic Resource Model" Alias="GenericResource 1234" Locked="false" Excluded="false" WillBeLocked="true">
    				<ResourceAttributes/>
    				<LockInfo/>
    				</ResourceInfo>
    				<ResourceInfo Name="Router 1234" FolderFullPath="Lab Routers" Address="192.168.1.201" FullAddress="192.168.1.201" RootAddress="192.168.1.201" ResourceFamilyName="Generic Chassis" ResourceModelName="Generic Chassis Model" Alias="Router 1234" Locked="false" Excluded="false" WillBeLocked="false">
    				<ResourceAttributes>
    				<ResourceAttribute Name="SW_Version" Value="" Type="String"/>
    				</ResourceAttributes>
    				<LockInfo/>
    				</ResourceInfo>
    				</Resources>
    				<AbstractResources/>
    				<Routes>
    				<Route Source="GenericResource 1234/Port 1" Target="Router 1234/Port 1" RouteType="bi" Shared="true">
    				<Segments>
    				<Segment Source="GenericResource 1234/Port 1" Target="Router 1234/Port 1"/>
    				</Segments>
    				</Route>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 2" RouteType="uni" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="GenericResource 1234/Port 2"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    SecureLogonLog in to the TestShell service using the AuthToken.

    Logs in a user with a token. If no domain is specified, this method logs the user in to the global (default) domain.

    Syntax

    SecureLogon(token,domainName);

    Parameters

    TypeNameDescription
    stringtoken
    Token to logon with.
    stringdomainName
    Specify the name of the domain. If no domain is specified, it logs the user in to the global (default) domain.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.SecureLogon("xoV3libZzEG/ii7ZQqAuqw==","Global");
    			

    back to TOC

    SetAttributeValueSet an attribute value.

    Sets the value of the specified attribute.

    Syntax

    SetAttributeValue(resourceFullPath,attributeName,attributeValue);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringattributeName
    Specify the attribute name.
    stringattributeValue
    Specify the attribute’s value.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				testShellAPI.SetAttributeValue("Router 1234", "SW_Version", "1.3");
    			

    back to TOC

    SetAttributesValuesSets new attribute values for the specified resources.

    Sets new attribute values for the specified resources.

    Syntax

    SetAttributesValues(resourcesAttributesUpdateRequests);

    Parameters

    TypeNameDescription
    string[,]resourcesAttributesUpdateRequests
    Specify a list of resources, attribute names, and new attribute values (up to 10000 rows).
    For example: {['ResourceFullName', 'AttributeName','AttributeValue';'ResourceFullName2', 'AttributeName2','AttributeValue2']}.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				testShellAPI.SetAttributesValues(new string[,] {{"resource","attribute","value"}});
    			

    back to TOC

    SetBaudRateSet console port baud rate.

    Sets the baud rate for one or more console ports.

    Syntax

    SetBaudRate(reservationId,resourceFullPath,consolePortsFullPath,baudRate,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    string[]consolePortsFullPath
    Specify a list of console ports according to their location in the Resource Explorer. Include the full path from the root to each console port, separated by slashes. For example: Console/Ports/PortName.
    BaudRatebaudRate
    Specify the baud rate to apply to the ports.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.SetBaudRate(reservationId,"GenericResource 1234",new string[]{"GenericResource 1234/ConsolePort 21"},BaudRate.Baud9600,out output,out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output=""/>

    back to TOC

    SetConsoleForXModemSet a console for Xmodem.

    Sets one or more consoles for Xmodem.

    Syntax

    SetConsoleForXModem(reservationId,resourceFullPath,consolePortsFullPath,baudRate,out output,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    string[]consolePortsFullPath
    Specify a list of console ports according to their location in the Resource Explorer. Include the full path from the root to each console port, separated by slashes. For example: Console/Ports/PortName.
    BaudRatebaudRate
    Specify the baud rate to apply to the ports.
    out stringoutput
    The command results.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI testShellAPI = new TestShellAPI();
    				string output;
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.SetConsoleForXModem(reservationId,"GenericResource 1234",new string[]{"GenericResource 1234/ConsolePort 21"},BaudRate.Baud9600,out output,out resultXml);
    			

    Output

  • resultXml
  • <ResponseInfo Output=""/>

    back to TOC

    SetResourceLiveStatusSets the live status of a resource.

    Sets the live status of the resource

    Syntax

    SetResourceLiveStatus(resourceFullPath,liveStatusName,additionalInfo,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullName
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA.
    stringliveStatusName
    Resource live status name
    stringadditionalInfo
    Resource live status additional info
    out stringresultXml
    Resource live status additional info

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.SetResourceLiveStatus("myResourceName", "Online" , "Resource was responding to pings at 12/12/2013 10:35 AM" , out resultXml );
    			

    Output

  • resultXml
  • 
    				<ResponseInfo type="ResourceLiveStatusInfo" liveStatusName="name1" liveStatusDescription="description1"/>
    				</Response>
    			

    back to TOC

    SetReservationLiveStatusSets the live status of the reservation.

    Sets the live status of the reservation

    Syntax

    SetReservationLiveStatus(reservationId, liveStatusName, additionalInfo);

    Parameters

    TypeNameDescription
    stringreservationId
    Specifies the string that represents the reservation’s unique identifier.
    stringliveStatusName
    Reservation live status name
    stringadditionalInfo
    Reservation live status additional info

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.SetReservationLiveStatus("344c2d21-578c-4653-a826-54c2035ff998", "Pass" , "Reservation was responding to pings at 12/12/2013 10:35 AM");
    			

    back to TOC

    SetResourceSharedStateSet the resource sharing state.

    Sets the resource sharing state.

    Syntax

    SetResourceSharedState(reservationId,resourcesFullName,isShared);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]resourcesFullName
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName
    YesNoOptionsisShared
    Specify whether to allow sharing of the resource.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string resultXml;
    				testShellAPI.SetResourceSharedState(reservationId,new string[]{"Router 1234"},YesNoOptions.Yes);
    			

    back to TOC

    SetRouteAttributesSet a route's attributes.

    Sets attributes and associated values for a specified route.

    Syntax

    SetRouteAttributes(reservationId,sourceResourceFullPath,targetResourceFullPath,applyChangesTo,attributeRequests);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringsourceResourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringtargetResourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    RouteAttributesChangeTargetapplyChangesTo
    Specify on which resources to apply the attribute changes: Source/Target/All.Source refers to the resource connected to the source endpoint of the route. Target refers to the resource connected to the target endpoint of the route. All encompasses all route resources.
    string[]attributeRequests
    Specify an array of attributes and associated attribute values.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.SetRouteAttributes(reservationId,"Router 1234/Port 1","GenericResource 1234/Port 1",RouteAttributesChangeTarget.All,new string["SW_Version","1.3"]);
    			

    back to TOC

    SetRouteAttributesViaAliasSet a route's attributes.

    Sets attributes and associated values for a route specified via its alias.

    Syntax

    SetRouteAttributesViaAlias(reservationId,routeAlias,applyChangesTo,attributeRequests);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringrouteAlias
    Specify the route’s alias.
    RouteAttributesChangeTargetapplyChangesTo
    Specify on which resources to apply the attribute changes: Source/Target/All.Source refers to the resource connected to the source endpoint of the route. Target refers to the resource connected to the target endpoint of the route. All encompasses all route resources.
    string[]attributeRequests
    Specify an array of attributes and associated attribute values.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string resultXml;
    				testShellAPI.SetRouteAttributesViaAlias(reservationId,"route1",RouteAttributesChangeTarget.All,new string["SW_Version","1.3"]);
    			

    back to TOC

    SetConnectorAttributesSet a connector's attributes.

    Sets attributes and associated values for a specified connector.

    Syntax

    SetConnectorAttributes(reservationId,sourceResourceFullPath,targetResourceFullPath,attributeRequests);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringsourceResourceFullName
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringtargetResourceFullName
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    string[,]attributeRequests
    Specify a matrix of attributes and associated attribute values.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.SetConnectorAttributes(reservationId,"Router 1234/Port 1","GenericResource 1234/Port 1", new string[,]{{"SW_Version","1.3"}});
    			

    back to TOC

    SetConnectorAttributesViaAliasSet a connector's attributes.

    Sets attributes and associated values for a connector specified via its alias.

    Syntax

    SetConnectorAttributesViaAlias(reservationId,connectorAlias,attributeRequests);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringconnectorAlias
    Specify the connector’s alias.
    string[,]attributeRequests
    Specify a matrix of attributes and associated attribute values.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string resultXml;
    				testShellAPI.SetConnectorAttributesViaAlias(reservationId,"connector1", new string[,]{{"SW_Version","1.3"}});
    			

    back to TOC

    SetGroupDomainPermissionsSet the permission level of a group in domain.

    Set the permission level of a group in domain.

    Syntax

    SetGroupDomainPermission(domainName,groupName,viewOnly);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    stringgroupName
    Specify the group name.
    YesNoOptionsviewOnly
    Specify if the group should be have view only permissions.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.SetGroupDomainPermissions("Global", "RND_Users", YesNoOptions.Yes);
    			

    back to TOC

    SetConnectorsInReservationReserve specified connectors.

    Adds connectors between source and target or update existing ones.

    Syntax

    SetConnectorsInReservation(reservationId, connectors, out setConnectors);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[,]connectors
    List of connectors to set in the reservation.
    For example: {['SourceResourceFullPath', 'TargetResourceFullPath', 'Direction', 'Alias';]}.
    out string[,]setConnectors
    Visual connectors associated with the specified reservation.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] connectors = {{"bridge1/port1", "bridge2/port1", "bi", "some alias"}};
    				string[,] setConnectors;
    				testShellAPI.SetConnectorsInReservation(reservationId, connectors, out setConnectors);
    			

    Output

  • connectors
  • {{"bridge1/port1", "bridge2/port1", "bi", "some alias"}}

    back to TOC

    SetTopologyCategorySets a category to a topology.

    Set a category to given topology

    Syntax

    SetTopologyCategory(topologyFullPath, categoryName, categoryValue);

    Parameters

    TypeNameDescription
    stringtopologyFullPath
    Specify the topology (name or full path), to associate the category to. For full path, specify the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    stringcategoryName
    Specify the category's name which we want to set
    stringcategoryValue
    Specify the category's value

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.SetTopologyCategory("dir1/myTopology","lookUpCategory","bonjour");
    			

    back to TOC

    SyncResourceFromDeviceUpdate a resource with current device settings and mappings.

    Synchronizes the specified resource with current device settings and mappings.

    Syntax

    SyncResourceFromDevice(resourceFullPath,out errorMessage,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    out stringerrorMessage
    Returns any error messages from the resource synchronization.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml, errorMessage;
    				testShellAPI.SyncResourceFromDevice("L1 Switch 1234",out errorMessage,out resultXml);
    			

    back to TOC

    SyncResourceToDeviceUpdate device settings and mappings from the resource.

    Updates device settings and mappings from the specified resource.

    Syntax

    SyncResourceToDevice(resourceFullPath,out errorMessage,out resultXml);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    out stringerrorMessage
    Returns any error messages from the resource synchronization.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml, errorMessage;
    				testShellAPI.SyncResourceToDevice("L1 Switch 1234",out errorMessage,out resultXml);
    			

    back to TOC

    SetReservationResourcePositionSet resource position in a reservation.

    Sets the location of a specified resource in the reservation diagram.

    Syntax

    SetReservationResourcePosition(reservationId,resourceFullPath,x,y);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullName
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName.
    doublex
    Specify the x coordinate of the resource's top left corner.
    doubley
    Specify the y coordinate of the resource's top left corner.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string resourceFullName = "bridge";
    				double x = 100, y = 100;
    				string resultXml;
    				testShellAPI.SetReservationResourcePosition(reservationId, resourceFullName, x, y, out resultXml);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo>
    				</ResponseInfo>
    			

    back to TOC

    SetServiceDriverSets a service model driver.

    Sets the driver for a specified service model, if empty, removes its driver.

    Syntax

    SetServiceDriver(serviceName,driverName);

    Parameters

    TypeNameDescription
    stringserviceName
    Specify the name of the service model.
    stringdriverName
    Specify the name of the driver.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.SetServiceDriver("Example_service_model","NewDriver");
    			

    back to TOC

    SetServiceLiveStatusSets the live status of a service.

    Sets the live status of a service

    Syntax

    SetServiceLiveStatus(reservationId, serviceAlias, liveStatusName, additionalInfo);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation's unique identifier.
    stringserviceAlias
    Specify the string that represents the service's alias.
    stringliveStatusName
    Resource live status name
    stringadditionalInfo
    Resource live status additional info

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.SetServiceLiveStatus("0e937c16-2865-4ad1-b843-aa7608282e56", "My Service", "Online" , "Resource was responding to pings at 12/12/2013 10:35 AM");
    			

    back to TOC

    SetReservationServicePositionSet service position in a reservation.

    Sets the location of a specified service in the reservation diagram.

    Syntax

    SetReservationServicePosition(reservationId,serviceAlias,x,y);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringserviceAlias
    Specify the alias of the service.
    doublex
    Specify the x coordinate of the resource's top left corner.
    doubley
    Specify the y coordinate of the resource's top left corner.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string serviceAlias = "service";
    				double x = 100, y = 100;
    				testShellAPI.SetReservationServicePosition(reservationId, serviceAlias, x, y);
    			

    back to TOC

    SetServiceAttributesValuesSet a resource's attributes.

    Sets attributes and associated values for a specified resource.

    Syntax

    SetServiceAttributesValues(reservationId,serviceAlias,attributeRequests);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringserviceAlias
    Specify the service name.
    string[,]attributeRequests
    Specify a matrix of attributes and associated attribute values.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.SetServiceAttributesValues(reservationId,"Service1", new string[,]{{"SW_Version","1.3"}});
    			

    back to TOC

    TerminateReservationTerminate a reservation.

    Terminates the specified reservation if the reservation is in a state of teardown.

    Syntax

    TerminateReservation(reservationId);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.TerminateReservation(reservationId);
    			

    back to TOC

    UnlockResourceUnlock a resource.

    Unlocks the specified resource.

    Syntax

    UnlockResource(reservationId,resourceFullPath);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.UnlockResource(reservationId,"GenericResource 1234/Port 1");
    			

    back to TOC

    UnlockResourcesUnlock multiple resources.

    Unlocks multiple resources.

    Syntax

    UnlockResources(reservationId,resourcesFullPath);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    string[]resourcesFullPath
    Specify a list of resource names. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/ResourceName

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				testShellAPI.UnlockResources(new string[]{"GenericResource 1234/Port 1" "GenericResource 1234/Port 2"});
    			

    back to TOC

    UnMapPortsRemove mapping for a pair of mapped ports.

    Removes existing mapping between a pair of physical (L1) switch ports.

    Syntax

    UnMapPorts(portA,portB);

    Parameters

    TypeNameDescription
    stringportA
    Specify the source port. (i.e. Folder1/Chassis1/Blade1/Port1).
    stringportB
    Specify the destination port. (i.e. Folder1/Chassis1/Blade1/Port1).

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UnMapPorts("L1 Switch 1234/Blade 1/Port 1","L1 Switch 1234/Blade 1/Port 3");
    			

    back to TOC

    UpdateConnectorAliasInReservationUpdate connector alias in reservation.

    Sets alias for a specified connector.

    Syntax

    UpdateConnectorAliasInReservation(reservationId,sourceResourceFullName,targetResourceFullName,direction,alias);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringsourceResourceFullName
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringtargetResourceFullName
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    MappingTypedirection
    Specify bidirectional or unidirectional as the connector direction.
    stringalias
    Specify the connector’s alias.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateConnectorAliasInReservation("2623d08d-9d19-4b95-a8dc-d7cca5ea05fb","Router 1234/Port 1","GenericResource 1234/Port 1", MappingType.Bidirectional, "some alias");
    			

    back to TOC

    UpdateConnectionWeightUpdate the connection weight between two resources.

    Sets a weight score on a physical connection between two resources. Weights are used to optimize route resolution in physical switch scenarios.

    Syntax

    UpdateConnectionWeight(resourceAFullPath,resourceBFullPath,weight);

    Parameters

    TypeNameDescription
    stringresourceAFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringresourceBFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    intweight
    Specify a number to represent the connection weight between the specified resources.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateConnectionWeight("Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3", 5);
    			

    back to TOC

    UpdateDomainTopologiesFolderUpdate the domain’s topologies folder.

    Update the domain’s topologies folder.

    Syntax

    UpdateDomainTopologiesFolder(domainName,topologiesFolder);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    stringtopologiesFolder
    Specify the topology name. Include the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateDomainTopologiesFolder("Domain1","Domain Topologies");
    			

    back to TOC

    UnarchiveDomainUn archive the domain

    Unarchive a domain. New reservation can be created.

    Syntax

    UnarchiveDomain(domainName,out resultXml);

    Parameters

    TypeNameDescription
    stringdomainName
    Specify the name of the domain.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				testShellAPI.UnarchiveDomain("Domain1", out resultXml);
    			

    back to TOC

    UpdateGroup

    Modifies the group name and description.

    Syntax

    UpdateGroup(groupName,newName,description,groupRole);

    Parameters

    TypeNameDescription
    stringgroupName
    Specify the name of the group.
    stringnewName
    Specify the new group name.
    stringdescription
    Provide a short description of the group.
    UpdateRoleOptionsgroupRole
    Specify the role of the group, possible values: External, Regular, DomainAdmin or Ignore (to keep the current role).

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateGroup("QA_Users","QAUsers","QA users group",GroupRole.Regular);
    			

    back to TOC

    UpdatePhysicalConnectionDefine the physical connection between two resources.

    Define a physical connection (cable link) between two resources.

    Syntax

    UpdatePhysicalConnection(resourceAFullPath,resourceBFullPath,overrideExistingConnections);

    Parameters

    TypeNameDescription
    stringresourceAFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringresourceBFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1. You may leave this parameter blank if you wish to disconnect the existing source resource connection.
    YesNoOptionsoverrideExistingConnections
    Overriding existing connections will automatically remove existing physical connection if they conflict with the requested new connections. If set to 'No', an error message will be displayed if any port is already connected and the operation will be cancelled.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdatePhysicalConnection("Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3",YesNoOptions.Yes);
    			

    back to TOC

    UpdatePhysicalConnectionsDefine physical connections between resources.

    Define physical connections (cable links) between resources.

    Syntax

    UpdatePhysicalConnections(physicalConnectionsUpdateRequests,overrideExistingConnections);

    Parameters

    TypeNameDescription
    string[,]physicalConnectionUpdateRequest
    Specify a list of physical connections to update.
    For example: {['ResourceA','ResourceB';'ResourceC',ResourceD']}
    YesNoOptionsoverrideExistingConnections
    Overriding existing connections will automatically remove existing physical connection if they conflict with the requested new connections. If set to 'No', an error message will be displayed if any port is already connected and the operation will be cancelled.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdatePhysicalConnections(new[,] {{"Router 1234/Port 1","L1 Switch 1234/Blade 1/Port 3"}},YesNoOptions.Yes);
    			

    back to TOC

    UpdateReservationDescriptionChange a reservation description.

    Modifies the description for a specified reservation.

    Syntax

    UpdateReservationDescription(reservationId,description);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the reservation ID.
    stringdescription
    Provide an updated description of the reservation. This text will replace the current description.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.UpdateReservationDescription(reservationId,"New Description");
    			

    back to TOC

    UpdateReservationNameChange a reservation name.

    Modifies the name for a specified reservation.

    Syntax

    UpdateReservationName(reservationId,name);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the reservation ID.
    stringname
    Provide an updated name of the reservation. This text will replace the current name.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				testShellAPI.UpdateReservationName(reservationId,"New Name");
    			

    back to TOC

    UpdateReservationGlobalInputsUpdates the unlinked global inputs in a specified reservation.

    Updates the unlinked global inputs in a specified reservation.

    Syntax

    UpdateReservationGlobalInputs(reservationId, globalInputs,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the reservation ID.
    string[,]globalInputs
    Global inputs associated with the specified reservation.
    For example: {['Input Name', 'Value';]}.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string[,] globalInputs = {{"input1", "new value"}};
    				testShellAPI.UpdateReservationGlobalInputs(reservationId, globalInputs);
    			

    back to TOC

    ChangeReservationOwnerUpdates the owner in a specified reservation.

    Updates the owner in a specified reservation.

    Syntax

    ChangeReservationOwner(reservationId, ownerName, out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the reservation ID.
    stringownerName
    New owner for the reservation.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string onerName = "admin";
    				testShellAPI.ChangeReservationOwner(reservationId, ownerName);
    			

    back to TOC

    UpdateResourceAddressUpdate a resource address.

    Modifies the address for a specified resource.

    Syntax

    UpdateResourceAddress(resourceFullPath,resourceAddress);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringresourceAddress
    Specify the resource’s new address.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateResourceAddress("Router 1234","192.168.1.201");
    			

    back to TOC

    UpdateResourceDescriptionChange a resource description.

    Modifies the description for a specified resource.

    Syntax

    UpdateResourceDescription(resourceFullPath,resourceDescription);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringresourceDescription
    Provide an updated description of the resource. This text will replace the current description.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateResourceDescription("Router 1234","a new description for the resource");
    			

    back to TOC

    UpdateResourceDriverUpdate a resource driver.

    Updates the driver for a specified resource.

    Syntax

    UpdateResourceDriver(resourceFullPath,driverName);

    Parameters

    TypeNameDescription
    stringresourceFullPath
    Specify the resource name. You can also include the full path from the root to the resource before the resource name, separated by slashes. For example: FolderName/RouterA/Port1.
    stringdriverName
    Specify the name of the driver.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateResourceDriver("Router 1234","NewDriver");
    			

    back to TOC

    UpdateTopologyOwnerUpdate the topology owner.

    Update the topology owner.

    Syntax

    UpdateTopologyOwner(topologyName,ownerName);

    Parameters

    TypeNameDescription
    stringtopologyName
    Specify the topology name. Include the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    stringownerName
    Specify the topology owner.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateTopologyOwner("Temp Automation Resources/TP1","admin");
    			

    back to TOC

    AddPermittedEditorsToTopologyAdd permitted editors to a topology.

    Add permitted editors to a topology.

    Syntax

    AddPermittedEditorsToTopology(topologyName, editorNames);

    Parameters

    TypeNameDescription
    stringtopologyName
    Specify the topology name. Include the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    string[,]editorNames
    A list of user names to be added as permitted editors to a topology.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
            testShellAPI.AddPermittedEditorsToTopology("Temp Automation Resources/TP1", new string[] {"admin", "John Doe"});
    			

    back to TOC

    RemovePermittedEditorsFromTopologyRemove permitted editors from a topology.

    Remove permitted editors from a topology.

    Syntax

    RemovePermittedEditorsFromTopology(topologyName, editorNames);

    Parameters

    TypeNameDescription
    stringtopologyName
    Specify the topology name. Include the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    string[,]editorNames
    A list of user names to be removed as permitted editors from a topology.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
            testShellAPI.RemovePermittedEditorsFromTopology("Temp Automation Resources/TP1", new string[] {"admin", "John Doe"});
    			

    back to TOC

    UpdateTopologyDriverUpdate the topology driver.

    Update the topology driver.

    Syntax

    UpdateTopologyDriver(topologyFullPath,driverName);

    Parameters

    TypeNameDescription
    stringtopologyFullPath
    Specify topology (name or full path). For full path, specify the full path from the root to the topology, separated by slashes. For example: FolderName/Topologies/TopologyName.
    stringdriverName
    Specify the name of the driver. Leave empty to remove associated driver.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateTopologyDriver("Topologies/Topology1", "Topology Driver");
    			

    back to TOC

    UpdateUser

    Configures a user's email and activity settings.

    Syntax

    UpdateUser(username,email,isActive);

    Parameters

    TypeNameDescription
    stringusername
    The username of the user you want to update.
    stringemail
    The new email address to update to.
    YesNoOptionsisActive
    Grant or deny active access to the application.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateUser("User1234","user1234@work.com",YesNoOptions.Yes);
    			

    back to TOC

    UpdateUsersLimitations

    Update MaxConcurrentReservations, MaxReservationDuration, MaxSavedSandboxes, MaxScheduledSandboxes and MaxOwnedBlueprints.

    Syntax

    UpdateUsersLimitations(userUpdateRequests);

    Parameters

    TypeNameDescription
    string[,]userUpdateRequests
    List of Username, MaxConcurrentReservations, MaxReservationDuration, MaxSavedSandboxes, MaxScheduledSandboxes, and MaxOwnedBlueprints of the users you wish to update.
    For example: {['Username1','1','1','17','10';'Username2','12','10','22','10','10']} Please note that when modifying MaxScheduledSandboxes attribute, *MaxSavedSandboxes* attribute must be updated.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateUsersLimitations(new string[,] {{"username1", "1", "", "", "", ""},{"username2", "100", "50", "20", "10", "10"}});
    			

    back to TOC

    UpdateUserGroupsModify a user's group memberships.

    Update an existing user's groups (replaces existing user's groups).

    Syntax

    UpdateUserGroups(username,groupsNames);

    Parameters

    TypeNameDescription
    stringusername
    Specify the name of the user.
    string[]groupsNames
    Use this method to update a user's group memberships. Activating this method will replace the user's memberships with the specified list of groups.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateUserGroups("User1234", new string[] {"QA_Users", "Testers_Users"});
    			

    back to TOC

    UpdateUserPasswordModify a user's password.

    Changes a user's password.

    Syntax

    UpdateUserPassword(username,newPassword);

    Parameters

    TypeNameDescription
    stringusername
    Specify the name of the user.
    stringpassword
    Specify the user's new login password.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateUserPassword("User1234","Pass1234");
    			

    back to TOC

    UpdateRouteAliasesInReservationUpdate route aliases in a reservation

    Update route aliases in a reservation.

    Syntax

    UpdateRouteAliasesInReservation(reservationId,routeAliases,out resultXml);

    Parameters

    TypeNameDescription
    stringreservationId
    Specifies the string that represents the reservation’s unique identifier.
    string[,]routeAliases
    Specify a matrix of route source, route target and alias.
    For example: {['SourceResourceFullName', 'TargetFullName','Alias';'SourceResourceFullName2', 'TargetFullName2','Alias2']}.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string resultXml;
    				string reservationId = "28cb2a71-c8fc-4f41-a22b-e65685ebed14";
    				string[,] routes;
    				testShellAPI.UpdateRouteAliasesInReservation(reservationId,new string[,]{"Router 1234/Port 1","GenericResource 1234/Port 2","a route"},out resultXml);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo>
    				<Routes>
    				<Route Source="Router 1234/Port 1" Target="GenericResource 1234/Port 2" RouteType="uni" Shared="true">
    				<Segments>
    				<Segment Source="Router 1234/Port 1" Target="L1 Switch 1234/Blade 1/Port 3"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 3" Target="L1 Switch 1234/Blade 1/Port 2"/>
    				<Segment Source="L1 Switch 1234/Blade 1/Port 2" Target="GenericResource 1234/Port 2"/>
    				</Segments>
    				</Route>
    				</Routes>
    				</ResponseInfo>
    			

    back to TOC

    UpdateDriverUpdate Driver

    Uploads a new version of an existing driver

    Syntax

    UpdateDriver(driverName, pathToDriver);

    Parameters

    TypeNameDescription
    stringdriverName
    Specify the driver name.
    stringdriverFileName
    Specify the driver file name/full path.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateDriver("TestDriver", "c:\file.zip");
    			

    back to TOC

    UpdateScriptUpdate Script

    Uploads a new version of an existing script

    Syntax

    UpdateScript(scriptName, pathToScript);

    Parameters

    TypeNameDescription
    stringscriptName
    Specify the script name.
    stringscriptFile
    Specify the script file data (base64 file representation).
    stringscriptFileName
    Specify the script file name(optional).

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.UpdateScript("TestScript", "c:\TestScript_Update.zip");
    			

    back to TOC

    WriteMessageToReservationOutputAllows sending output to the command output window in a reservation.

    Allows sending output to the command output window in a reservation.

    Syntax

    WriteMessageToReservationOutput(reservationId, message);

    Parameters

    TypeNameDescription
    stringreservationId
    Specify the string that represents the reservation’s unique identifier.
    stringmessage
    Output message to the command output window.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string reservationId = "af626b88-458b-4e7a-9054-c03d8cffa260";
    				string message = "this is an output from API";
    				testShellAPI.WriteMessageToReservationOutput(reservationId, message);
    			

    back to TOC

    GetAllApprovalRequestsGet all approval requests.

    Get all the approval requests.

    Syntax

    GetAllApprovalRequests(out resultXml);

    Parameters

    TypeNameDescription
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetAllApprovalRequests();
    			

    Output

  • resultXml
  • 
    				<ResponseInfo>
    				<ApprovalRequestResponseInfos xsi:type="GetAllApprovalRequestsResponseInfo">
    				<ApprovalRequest Id="1" RequestedEntityId="de6f5e37-e3e3-46d0-b915-07a1f30c07d4" RequestedEntityType="Blueprint" UserInfoId="3" StartTime="01/02/2023" EndTime="02/02/2023 14:00:00" State="Pending" CreationDate="30/01/2023 13:18:42" ModifiedDate="30/01/2023 13:18:42" EntityName="BlueprintName" IsApprover="true" RequesterName="userA">
    				<Duration>60</Duration>
    				</ApprovalRequest>
    				</ApprovalRequestResponseInfos>
    				</ResponseInfo>
    			

    back to TOC

    GetApprovalRequestGet Approval request.

    Get approval request info.

    Syntax

    GetApprovalRequest(id, out resultXml);

    Parameters

    TypeNameDescription
    intid
    Specify the number that represents the request’s unique identifier.
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.GetApprovalRequest(id);
    			

    Output

  • resultXml
  • 
    				<ResponseInfo xsi:type="GetApprovalRequestResponseInfo" Id="1" RequestedEntityId="de6f5e37-e3e3-46d0-b915-07a1f30c07d4" RequestedEntityType="Blueprint" UserInfoId="3" StartTime="01/02/2023" EndTime="02/02/2023 14:00:00" State="Pending" CreationDate="30/01/2023 13:18:42" ModifiedDate="30/01/2023 13:18:42" EntityName="BlueprintName" IsApprover="true" RequesterName="userA">
    				<Duration>60</Duration>
    				</ResponseInfo>
    			

    back to TOC

    CreateBlueprintApprovalRequestCreate a new blueprint approval request.

    Create a new approval request.

    Syntax

    CreateBlueprintApprovalRequest(entityId, requestNotes, globalInputs, requirementsInputs, additionalInfoInputs, startTime, endTime, duration, out resultXml);

    Parameters

    TypeNameDescription
    stringentityId
    Unique identifier of the entity (Blueprint id).
    stringrequestNotes
    Request description (optional).
    string[,]globalInputs
    Global inputs associated with the specified topology. For example: {['Input Name', 'Value';]}.
    string[,]requirementsInputs
    Requirements inputs associated with the specified topology. For example: {['Resource Name', 'Input Name', 'Value', 'AttributeType';]}, AttributeType can be one of the following: Attributes/Models/Quantity.
    string[,]additionalInfoInputs
    Additional info inputs associated with the specified topology. For example: {['Resource Name', 'Input Name', 'Value';]}.
    DateTimestartTime
    Start time of the request (leave empty to immediately request approval).
    DateTimeendTime
    End time of the request, after which the request will be invalid (leave empty for unlimited request time).
    stringduration
    Time in minutes to consume the entity. For example, sandbox duration (leave empty for unlimited consumption time).
    out stringresultXml
    Specify the variable for the XML output.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				string[,] globalInputs = {{"input1", "value1"}, {"input2", "value2"}};
    				string[,] requirementsInputs = {{"resource", "attribute", "value", "Attributes"}};
    				string[,] additionalInfoInputs = {{"resource", "attribute", "value"}};
    				testShellAPI.CreateBlueprintApprovalRequest("de6f5e37-e3e3-46d0-b915-07a1f30c07d4", "Request notes", globalInputs, requirementsInputs, additionalInfoInputs, new DateTime(2023, 1, 1, 12, 0, 0), new DateTime(2023, 2, 2, 12, 0, 0), "60");
    			

    back to TOC

    DeleteApprovalRequestDelete an approval request.

    Delete an approval request.

    Syntax

    DeleteApprovalRequest(id);

    Parameters

    TypeNameDescription
    intid
    Unique id of the request.

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.DeleteApprovalRequest(3);
    			

    back to TOC

    ApproveApprovalRequestApprove an approval request.

    Approve an approval request.

    Syntax

    ApproveApprovalRequest(id, message);

    Parameters

    TypeNameDescription
    intid
    Unique id of the request.
    stringmessage
    message (optional).

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.ApproveApprovalRequest(3, "approve message");
    			

    back to TOC

    RejectApprovalRequestReject an approval request.

    Reject an approval request.

    Syntax

    RejectApprovalRequest(id, message);

    Parameters

    TypeNameDescription
    intid
    Unique id of the request.
    stringmessage
    message (optional).

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.RejectApprovalRequest(3, message);
    			

    back to TOC

    ConsumeApprovalRequestConsume an approval request.

    Consume an approval request.

    Syntax

    ConsumeApprovalRequest(id, name, startTime, endTime);

    Parameters

    TypeNameDescription
    intid
    Unique id of the request.
    stringname
    Name for the consumed entity (Sandbox name).
    DateTimestartTime
    Start time of the request (leave empty for immediate use).
    DateTimeendTime
    End time of the request (leave empty for unlimited duration).

    Example

    
    				TestShellAPI.TestShellAPI testShellAPI = new TestShellAPI.TestShellAPI();
    				testShellAPI.ConsumeApprovalRequest(3, "NewReservation", new DateTime(2023, 1, 1, 14, 0, 0), new DateTime(2023, 1, 1, 14, 30, 0));
    			

    back to TOC